Difference between revisions of "Roadmap"
Prokoudine (Talk | contribs) |
Prokoudine (Talk | contribs) (Roadmap update) |
||
(17 intermediate revisions by the same user not shown) | |||
Line 22: | Line 22: | ||
|} | |} | ||
− | === GIMP 2.10 === | + | === GIMP 2.10.x === |
− | + | The 2.10.x series coexists with the ongoing work to port GIMP to GTK+3 and cleanup/obsolete API. | |
+ | |||
+ | We try to backport fixes and new features to 2.10.x from the master branch when we can. | ||
+ | |||
+ | More or less complete list of changes: [[Release:2.10 changelog]]. | ||
{| class="wikitable sortable" style="text-align: left;" | {| class="wikitable sortable" style="text-align: left;" | ||
Line 41: | Line 45: | ||
|Canvas rotation and flipping|| {{yes}} || Released in 2.9.2 | |Canvas rotation and flipping|| {{yes}} || Released in 2.9.2 | ||
|- | |- | ||
− | |MyPaint Brush tool || {{yes}} || Released as stable in 2.9.4. No dynamic support though ([https:// | + | |MyPaint Brush tool || {{yes}} || Released as stable in 2.9.4. No dynamic support though ([https://gitlab.gnome.org/GNOME/gimp/issues/935 bug 768772]) |
|- | |- | ||
|Support the XDG Base Directory Specification || {{yes}} || Released in 2.9.2 | |Support the XDG Base Directory Specification || {{yes}} || Released in 2.9.2 | ||
Line 48: | Line 52: | ||
|- | |- | ||
|Layer modes rewrite || {{yes}} || We need to support both legacy, gamma-corrected, and linear modes, sensible UI is missing | |Layer modes rewrite || {{yes}} || We need to support both legacy, gamma-corrected, and linear modes, sensible UI is missing | ||
− | |||
− | |||
|- | |- | ||
|Better support for image metadata || {{yes}} || Released in 2.9.6 | |Better support for image metadata || {{yes}} || Released in 2.9.6 | ||
|- | |- | ||
− | |Support layer masks on layer groups || {{ | + | |Support layer masks on layer groups || {{yes}} || Released in 2.10 |
|- | |- | ||
− | |Cleanup libgimp || {{ | + | |Cleanup libgimp || {{yes}} || we need to go through the API with a fine comb and check to deprecate all functions which are not suitable for 3.0. |
|- | |- | ||
− | |UI themes || {{ | + | |UI themes || {{yes}} || Released in 2.9.6 |
|- | |- | ||
− | |Icon themes || {{ | + | |Icon themes || {{yes}} || Released in 2.9.6 |
|- | |- | ||
|Icon size minimal support || {{yes}} || Released in 2.9.6 | |Icon size minimal support || {{yes}} || Released in 2.9.6 | ||
+ | |- | ||
+ | |Color management fixes and improvements || {{wip}} || Changes released in 2.10.x, more comeing in 3.x | ||
|} | |} | ||
− | [https:// | + | [https://gitlab.gnome.org/GNOME/gimp/issues?milestone_title=2.10 Full list of open bugs with milestone 2.10]. |
=== GIMP 3.0 === | === GIMP 3.0 === | ||
+ | |||
+ | The focus of this version is to complete the GTK+3 port. | ||
+ | |||
+ | Benefits: | ||
+ | |||
+ | * Better maintained version of GTK+ | ||
+ | * Better Wacom support | ||
+ | * Better handling of HiDPI displays | ||
+ | * Wayland support on Linux | ||
+ | * Refactored code, easier to build new features upon | ||
{| class="wikitable sortable" style="text-align: left;" | {| class="wikitable sortable" style="text-align: left;" | ||
!'''Feature''' || '''Status''' || '''Comments''' | !'''Feature''' || '''Status''' || '''Comments''' | ||
|- | |- | ||
− | |Port to GTK3 || {{wip}} || git branch " | + | |Port to GTK3 || {{wip}} || git branch "master", GtkAction→GAction port is the big last thing |
|- | |- | ||
− | | | + | |Redesign wire protocol for scripts/plug-ins || {{wip}} || GObject Intrpospection is being introduced into 3.0, along with refactoring for plug-ins, without wire protocol redesign though |
|- | |- | ||
− | | | + | |Wayland support fixes || {{wip}} || git branch "master" |
|- | |- | ||
− | | | + | |Space invasion || {{wip}} || various color management improvemnts |
|- | |- | ||
− | | | + | |Multi-layer selection || {{wip}} || Most tools are multi-layer selection aware but only work on the first selected layer |
+ | |- | ||
+ | |Extensions management || {{wip}} || | ||
|} | |} | ||
− | + | [https://gitlab.gnome.org/GNOME/gimp/issues?milestone_title=3.0 List of open bugs with milestone 3.0] | |
− | [https:// | + | |
=== GIMP 3.2 === | === GIMP 3.2 === | ||
− | The focus of this release is going to be on non-destructive editing. Note that both adjustment layers and layer effects/styles are the | + | The focus of this release is going to be on non-destructive editing. Note that both adjustment layers and layer effects/styles are the terminologies currently used in requests by users. We haven't yet assessed, how exactly non-destructive editing is going to be implemented. |
− | More features e.g. from the 'Future' section can sneak in, but that will depend on availability of developers. | + | More features e.g. from the 'Future' section can sneak in, but that will depend on the availability of developers. |
{| class="wikitable sortable" style="text-align: left;" | {| class="wikitable sortable" style="text-align: left;" | ||
Line 105: | Line 120: | ||
{| class="wikitable sortable" style="text-align: left;" | {| class="wikitable sortable" style="text-align: left;" | ||
!'''Feature''' || '''Status''' || '''Comments''' | !'''Feature''' || '''Status''' || '''Comments''' | ||
+ | |- | ||
+ | |Fix compositing part of blending modes || {{yes}} || | ||
+ | |- | ||
+ | |Improve animation features || {{wip}} || Animation plug-in is dropped, this is being rewritten as a core feature | ||
|- | |- | ||
|Seamless Clone tool || {{wip}} || Released as experimental in 2.9.2, needs work | |Seamless Clone tool || {{wip}} || Released as experimental in 2.9.2, needs work | ||
|- | |- | ||
− | |Automatic layer boundary management || {{ | + | |Automatic layer boundary management || {{wip}} || [https://gitlab.gnome.org/GNOME/gimp/issues/32 Bug #32] |
|- | |- | ||
|Auto-anchoring of floating selection || {{no}} || | |Auto-anchoring of floating selection || {{no}} || | ||
|- | |- | ||
− | |Script recording and playback || {{no}} || [https:// | + | |Script recording and playback || {{no}} || [https://gitlab.gnome.org/GNOME/gimp/issues/8 Bug #8], needs complete GEGL port first |
|- | |- | ||
− | |Optionally save undo history in the XCF || {{no}} || [https:// | + | |Optionally save undo history in the XCF || {{no}} || [https://gitlab.gnome.org/GNOME/gimp/issues/89 Bug #89] |
|- | |- | ||
− | |Smart objects || {{no}} || [https:// | + | |Smart objects || {{no}} || [https://gitlab.gnome.org/GNOME/gimp/issues/453 Bug #453], needs complete GEGL port first |
|- | |- | ||
|Brushpack support || {{no}} || | |Brushpack support || {{no}} || | ||
Line 122: | Line 141: | ||
|Support SwatchBooker file format for palettes and gradients || {{no}} || | |Support SwatchBooker file format for palettes and gradients || {{no}} || | ||
|- | |- | ||
− | |High-end CMYK support || {{ | + | |High-end CMYK support || {{wip}} || WIP in babl and GEGL. Also see [http://www.gimp.org/docs/userfaq.html#i-do-a-lot-of-desktop-publishing-related-work-will-you-ever-support-cmyk FAQ] for details |
|- | |- | ||
|Support for RGB working spaces other than sRGB || {{wip}} || currently being worked on in babl | |Support for RGB working spaces other than sRGB || {{wip}} || currently being worked on in babl | ||
|- | |- | ||
− | |Support for gamma encodings other than the sRGB TRC || {{ | + | |Support for gamma encodings other than the sRGB TRC || {{yes}} || |
|- | |- | ||
− | |Better text handling || {{no}} || See [http://gui.gimp.org/index.php/Text-Handling_in_GIMP Improvements in the text handling], [https:// | + | |Better text handling || {{no}} || See [http://gui.gimp.org/index.php/Text-Handling_in_GIMP Improvements in the text handling], [https://gitlab.gnome.org/GNOME/gimp/issues/35 Bug #35] |
|- | |- | ||
|Shape tool || {{no}} || Easily create circles, rectangles, N-side polygons, stars etc. | |Shape tool || {{no}} || Easily create circles, rectangles, N-side polygons, stars etc. | ||
|- | |- | ||
− | |Simplified add-ons management || {{ | + | |Vector layers || {{no}} || Back-end exists, there is no front-end. |
+ | |- | ||
+ | |Simplified add-ons management || {{wip}} || easily install/deinstall plug-ins, filters, scripts etc. | ||
|} | |} | ||
− | [https:// | + | [https://gitlab.gnome.org/GNOME/gimp/issues?milestone_title=Future List of open bugs with milestone 'Future'] |
== Further Reading == | == Further Reading == | ||
TODO list: [[Hacking:TODO]] | TODO list: [[Hacking:TODO]] |
Latest revision as of 12:45, 10 October 2020
Contents
Feature Prioritization
This is roughly how the core GIMP development team prioritizes feature development. Note that this does not mean we are not interested in contributions in other areas, or contributions of low prio features. Contributions of any kind are always welcomed. But at the end of the day, it is better to have one feature 100% complete than two features 50% complete, which is why features should be prioritized and then worked on in order.
Starting with GIMP 2.10, features will be developed in isolation on feature branches and be merged to the main branch when they are ready.
The list below shows when coming features are expected to be ready, but that might change.
Roadmap
Legend
Status Column:
work hasn't started yet | |
work in progress | |
implementation finished |
GIMP 2.10.x
The 2.10.x series coexists with the ongoing work to port GIMP to GTK+3 and cleanup/obsolete API.
We try to backport fixes and new features to 2.10.x from the master branch when we can.
More or less complete list of changes: Release:2.10 changelog.
Feature | Status | Comments |
---|---|---|
High bit depths | Yes | Released in 2.9.2 |
Preview filters on canvas | Yes | Released in 2.9.2, porting status |
OpenCL support | Yes | Released in 2.9.2, more plugins need OpenCL version, see also the Porting Matrix) |
Turn the IWarp plug-in into an on-canvas tool | Yes | Initial version released in 2.9.2. Improved version to be released in 2.9.6. |
Merge basic transformation tools | Yes | Unified Transform tool, released in 2.9.2 |
Canvas rotation and flipping | Yes | Released in 2.9.2 |
MyPaint Brush tool | Yes | Released as stable in 2.9.4. No dynamic support though (bug 768772) |
Support the XDG Base Directory Specification | Yes | Released in 2.9.2 |
Symmetry painting | Yes | Released in 2.9.4 |
Layer modes rewrite | Yes | We need to support both legacy, gamma-corrected, and linear modes, sensible UI is missing |
Better support for image metadata | Yes | Released in 2.9.6 |
Support layer masks on layer groups | Yes | Released in 2.10 |
Cleanup libgimp | Yes | we need to go through the API with a fine comb and check to deprecate all functions which are not suitable for 3.0. |
UI themes | Yes | Released in 2.9.6 |
Icon themes | Yes | Released in 2.9.6 |
Icon size minimal support | Yes | Released in 2.9.6 |
Color management fixes and improvements | work in progress | Changes released in 2.10.x, more comeing in 3.x |
Full list of open bugs with milestone 2.10.
GIMP 3.0
The focus of this version is to complete the GTK+3 port.
Benefits:
- Better maintained version of GTK+
- Better Wacom support
- Better handling of HiDPI displays
- Wayland support on Linux
- Refactored code, easier to build new features upon
Feature | Status | Comments |
---|---|---|
Port to GTK3 | work in progress | git branch "master", GtkAction→GAction port is the big last thing |
Redesign wire protocol for scripts/plug-ins | work in progress | GObject Intrpospection is being introduced into 3.0, along with refactoring for plug-ins, without wire protocol redesign though |
Wayland support fixes | work in progress | git branch "master" |
Space invasion | work in progress | various color management improvemnts |
Multi-layer selection | work in progress | Most tools are multi-layer selection aware but only work on the first selected layer |
Extensions management | work in progress |
List of open bugs with milestone 3.0
GIMP 3.2
The focus of this release is going to be on non-destructive editing. Note that both adjustment layers and layer effects/styles are the terminologies currently used in requests by users. We haven't yet assessed, how exactly non-destructive editing is going to be implemented.
More features e.g. from the 'Future' section can sneak in, but that will depend on the availability of developers.
Feature | Status | Comments |
---|---|---|
Filter/Adjustment layers | No | Needs complete GEGL port first, API for stacking GEGL ops on a layer will be available in 2.10 |
Layer effects | No | bevel/emboss, drop shadow etc., needs complete GEGL port first |
Future
Many of these features can be implemented in a branch and merged into the main development branch as we go, especially since we aim to loosen up the "no new features in stable releases" policy. Please talk to us, if you want to work on any of those.
Feature | Status | Comments |
---|---|---|
Fix compositing part of blending modes | Yes | |
Improve animation features | work in progress | Animation plug-in is dropped, this is being rewritten as a core feature |
Seamless Clone tool | work in progress | Released as experimental in 2.9.2, needs work |
Automatic layer boundary management | work in progress | Bug #32 |
Auto-anchoring of floating selection | No | |
Script recording and playback | No | Bug #8, needs complete GEGL port first |
Optionally save undo history in the XCF | No | Bug #89 |
Smart objects | No | Bug #453, needs complete GEGL port first |
Brushpack support | No | |
Support SwatchBooker file format for palettes and gradients | No | |
High-end CMYK support | work in progress | WIP in babl and GEGL. Also see FAQ for details |
Support for RGB working spaces other than sRGB | work in progress | currently being worked on in babl |
Support for gamma encodings other than the sRGB TRC | Yes | |
Better text handling | No | See Improvements in the text handling, Bug #35 |
Shape tool | No | Easily create circles, rectangles, N-side polygons, stars etc. |
Vector layers | No | Back-end exists, there is no front-end. |
Simplified add-ons management | work in progress | easily install/deinstall plug-ins, filters, scripts etc. |
List of open bugs with milestone 'Future'
Further Reading
TODO list: Hacking:TODO