darktable Changelog

What's new in darktable 4.6.1

Feb 17, 2024
  • The Big Ones:
  • Documentation is now complete for darktable 4.6 including translation into Ukrainian, Polish and Dutch.
  • Performance Improvements:
  • Fixed some OpenCL code paths that could produce garbled or unprocessed output without reporting the issue back to the pixel-pipe.
  • Other Changes:
  • Image discovery from the import dialog is now performed asynchronously. This means that a long parsing (due to using recursive mode in a directory with a huge number of sub-directories and files) can be interrupted by selecting another place/directory or un-checking recursive mode.
  • Bug Fixes:
  • Fixed an issue with importing images in recursive mode. Using this mode without having first selected a directory could freeze darktable due to it having to parse the whole disk (though it would recover eventually).
  • When importing images in recursive mode, the thumbs for images discovered in sub-directories are now properly displayed.
  • Fixed memory and resource leaks in the QOI image loader.
  • Fixed RGBE image loader.
  • Fixed possible issue with guide lines not being displayed in the Rotate and Perspective module.
  • Fixed non-persistent zoom level in culling mode when switching images.
  • Fixed crashes related to details mask when running low on GPU or system memory.
  • Fixed incorrect rendering of an initial snapshot after creating a second snapshot.
  • Keep selected styles in the style dialog after editing them.
  • Fixed collection selection for ISO, aperture and aspect ratio to work in all locales (independent of any locale-specific decimal separator).
  • Fixed RAW Chromatic Aberrations module, which could crash due to a rounding issue while computing an internal buffer size. This could cause a buffer overflow and possibly crash darktable.
  • Avoid undershoots while interpolating in Lens Correction, Rotate and Perspective, Retouch and Liquify modules.
  • Include LibRaw fix for artifacts when decoding high-ISO Canon CR3 files.
  • Fixed possible incorrect module name when applying styles, whereby the module name was showing garbled text.
  • Fixed possible incorrect default value initialized in Lens Correction legacy parameter migration from version 2.
  • Fixed garbled output and possible OpenCL errors for very dark regions in Color Balance RGB.
  • Fixed OpenCL startup for various cards.
  • Fixed issue where the right-click-and-drag rotation line was not being displayed on the image when a darkroom module was expanded.
  • Fixed lighttable scrolling freeze when using a track-pad.
  • Fix compatibility issues with HDR created DNG files.
  • Fix possible crash when using the capture's live view mode.
  • Fixed a zooming bug in lighttable culling mode where some images' area could be plain grey or having a very small thumb.
  • Fixed some missing pipe recomputing making processing modules' graph (Tone Equalizer for example) not properly updated.
  • Fixed several mouse scroll-wheel issues on macOS when used in combination with the Shift modifier key (color harmonies width, module height, geotagging date/time, ...).

New in darktable 4.6.0 (Dec 21, 2023)

  • Editing history is now periodically auto-saved (every 10 seconds) while editing images in the darkroom view. The auto-save interval can be changed (via a preference) or auto-save can be disabled entirely (by setting the interval to 0).
  • A new processing module rgb primaries has been added. This module can be used for delicate color corrections as well as creative color grading. It allows the red, green and blue primary colors to be moved around using "hue" and "purity" controls.
  • The underlying pixel operation is essentially the same as channel mixing.
  • In addition, the sigmoid module now includes a new primaries section, which can be used to gracefully handle difficult lighting situations (e.g. LEDs) and tune the overall look of the image. Modifying these parameters can provide pleasing sunsets, improved skin tones etc. This feature can only be used with sigmoid's per-channel mode and is loosely based on ideas from Troy Sobotka's AgX and related work in the Blender community. The included "smooth" preset should provide a good starting point for further corrections using this feature.
  • When working with the liquify and retouch modules, the full uncropped image is now always shown, with any crop indicated by displaying an overlaid rectangle. This allows for cropped-out parts of the image to be used without having to first disable the crop module and re-enable it when finished.
  • When panning or zooming in the darkroom view, a low resolution placeholder used to be shown until the image was fully recalculated for the newly-visible region. Now, if any part of the previous view is still visible, that part will be immediately shown in high quality, with only the remainder of the image being temporarily shown in low quality until the pipe has finished.
  • This has been achieved as part of a complete reworking of the darkroom image display, which has also removed some annoying jumps when replacing the low resolution placeholder with recalculated image data, or when switching between full and cropped view (when the crop, retouch or liquify modules are (un)focused).
  • Performance Improvements:
  • OpenCL is now initialized in the background immediately after launching the darktable UI, with progress indicated by a series of toast messages. Previously, this was done before the main UI was launched, which could lead to significant delays (sometimes more than a minute) between the user opening darktable and anything appearing on-screen, making it appear as though darktable had failed to start. Note that processing will be slower (since darktable will only use the CPU) until OpenCL is fully initialized.
  • An OpenCL code path has been implemented for lens correction using embedded correction metadata.
  • Image display speed in the map view has been increased by 25%.
  • Export speed has been improved for JPEG 2000 and B&W TIFF images.
  • The chromatic aberrations module is now approximagely 10% faster when run on the CPU.

New in darktable 4.4.2 (Jul 22, 2023)

  • Bug Fixes:
  • Graduated Density : Fix density computation for negative EVs.
  • Fixed wrong allocation of OpenCL image buffers for blending in DEVELOP_BLEND_CS_RAW.
  • Fixed roi_in calculation in highlights and RAW Chromatic Aberrations modules.
  • Fix snap to grid for cm/inch units in print view. Only mm was properly handled.
  • Fix issue where the highlight reconstruction method was reset to clip when applying a style from the lighttable.
  • Fix loading some image format using GraphicMagick on Windows.
  • Fix some possible wrong pixels at the lower-right border of images due to some miscalculation in Input Color Profile & Color Balance.
  • Fix retouch module ROI computation when a crop is active making some clone area inactive when the source was outside of the cropped area. This bug was only visible in darkroom main view.
  • Fix positioning of demosaicer RoI in according to algorithm and sensor. Avoid some possible (small) black artifacts on image borders.
  • White Balance Presets:
  • Noise Profiles:
  • Missing Compression Mode Support:
  • Apple ProRAW DNGs
  • CinemaDNG lossless (Blackmagic, DJI, etc.)
  • Fujifilm lossy RAFs
  • Nikon high efficiency NEFs
  • Samsung Expert RAW DNGs
  • Suspended Support:
  • Support for the following cameras is suspended because no samples are available on raw.pixls.us:
  • Creo/Leaf Aptus 22(LF3779)/Hasselblad H1
  • Fujifilm FinePix S9600fd
  • Fujifilm IS-1
  • GoPro FUSION
  • Kodak EasyShare Z980
  • Leaf Aptus-II 5(LI300059)/Mamiya 645 AFD
  • Leaf Credo 60
  • Leaf Credo 80
  • Minolta DiMAGE 5
  • Olympus SP320
  • Panasonic DMC-FX150
  • Pentax Q10
  • Phase One IQ250
  • Samsung GX10
  • Samsung GX20
  • Samsung EK-GN120
  • Samsung SM-G920F
  • Samsung SM-G935F
  • Sinar Hy6/ Sinarback eXact
  • ST Micro STV680
  • Translations:
  • New English translation with capital letters
  • German
  • European Spanish
  • Finnish
  • French
  • Hebrew
  • Hungarian
  • Japanese
  • Polish
  • Brazilian Portuguese
  • Russian
  • Turkish
  • Slovenian
  • Albanian
  • Ukrainian
  • Chinese - China
  • Chinese - Taiwan

New in darktable 4.4.1 (Jul 1, 2023)

  • Bug Fixes:
  • Fix inverted and corrupted grow/shrink in Liquify module.
  • Fix FilmicRGB V7 CPU code path to disable the gamut mapping.
  • Fix Negadoctor CPU code path where clipping was not properly computed.
  • Fix snapshot label when containing non escaped characters.
  • Fix possible crash on Windows when using mask in the Color Balance RGB module.
  • Fix default value when editing the module's first instance name.
  • Fix top history module being reset to default values when not using the auto module naming.
  • Make sure OpenCL devices report at least v1. 2 support.
  • Add some missing support for mask distortion to modules changing ROI (Region Of Interest) while processing.
  • Fixed a spacing issue with text boxes in the metadata editor when one or more fields have been hidden by the user.
  • Fix a bug in colorspace transformation OpenCL code leading to CPU
  • fallback.
  • Allow entering full preview mode when no image hovered or selected.
  • Fix a case where no default auto-preset were applied to the
  • image. If a user's auto-preset is created for a module we want to
  • disable the default auto-preset only if the user's preset is
  • actually applied (meaning the filter on camera, lens, iso, aperture
  • or exposure matches).
  • Missing Compression Mode Support:
  • Apple ProRAW DNGs
  • CinemaDNG lossless (Blackmagic, DJI, etc.)
  • Fujifilm lossy RAFs
  • Nikon high efficiency NEFs
  • Samsung Expert RAW DNGs
  • Suspended Support:
  • Support for the following cameras is suspended because no samples are available on raw.pixls.us:
  • Creo/Leaf Aptus 22(LF3779)/Hasselblad H1
  • Fujifilm FinePix S9600fd
  • Fujifilm IS-1
  • GoPro FUSION
  • Kodak EasyShare Z980
  • Leaf Aptus-II 5(LI300059)/Mamiya 645 AFD
  • Leaf Credo 60
  • Leaf Credo 80
  • Minolta DiMAGE 5
  • Olympus SP320
  • Panasonic DMC-FX150
  • Pentax Q10
  • Phase One IQ250
  • Samsung GX10
  • Samsung GX20
  • Samsung EK-GN120
  • Samsung SM-G920F
  • Samsung SM-G935F
  • Sinar Hy6/ Sinarback eXact
  • ST Micro STV680
  • Translations:
  • New English translation with capital letters
  • German
  • European Spanish
  • Finnish
  • French
  • Hebrew
  • Hungarian
  • Japanese
  • Polish
  • Brazilian Portuguese
  • Russian
  • Slovenian
  • Albanian
  • Ukrainian
  • Chinese - China
  • Chinese - Taiwan

New in darktable 4.4.0 (Jun 21, 2023)

  • The Big Ones:
  • It is now possible to define multiple automatically-applied presets against a single processing module. Each preset after the first will be added to a new module instance immediately after the first instance in the pipeline.
  • To better visualise which module instance corresponds to which preset, the module label will be automatically set to the name of any preset that matches the current module’s parameters. If you subsequently alter those parameters, the label will be cleared, unless its parameters match to another preset, in which case it will be changed to the name of the matched preset. If the module label has been hand edited it will never be updated automatically.
  • A new option (preferences > darkroom > automatically update module name) has been introduced to allow this functionality to be disabled.
  • The default parameters of some processing modules have been reworked to allow them to be more easily used in copy/paste, presets and styles.
  • Many modules have default parameters based on image metadata or current workflow.
  • The default workflow configuration option (preferences > processing > auto-apply pixel workflow defaults) has now been adjusted to incorporate the previous chromatic adaptation workflow setting and to include the new sigmoid module.
  • The scopes module now has a new color harmony overlay option in RYB vectorscope mode. You can choose from 9 different color harmonies:.
  • A global right-click-and-drag operation has been added to allow image rotation to be corrected without first opening the rotate and perspective module. This operation can be used as long as the currently-focused module does not already use that shortcut for another purpose.
  • Drawn mask functionality has been completely overhauled with a large number of changes and fixes:
  • The “brush smoothing” and “pen pressure” options have been moved from the global preferences dialog to a new collapsible “properties” section in the mask manager, so that they can be changed while drawing and can be assigned shortcuts.
  • The drawn mask shape size/feather/hardness sliders in the mask manager now use a logarithmic scale and scrolling over them makes relative adjustments, just like Shift+scroll over the shape itself. As with other sliders, Ctrl or Shift can be used to make fine or coarse adjustments (similarly with shortcut fallbacks enabled). Shortcuts assigned to the sliders can be used to adjust brush size/hardness while drawing.
  • A fifth set operator has been added to the mask manager to allow drawn shapes to be combined in “sum” mode. This allows repeated brush strokes with low opacity to be layered on top of each other to increase the strength of the mask. This mode is now the default for brush shapes.
  • It is now possible to change the set operator (mode) for all shapes in a group from the right-click menu in the mask manager.
  • Some actions in the mask manager menu previously could be activated even though they would have no impact on the image in some contexts. The move up/down actions are therefore now disabled for the first and last element in a group respectively, and it is no longer possible to choose a set operator (mode) for the first element in a group.
  • The sort order of the shapes in mask manager groups has been reversed so that the lowest ranking shape is at the bottom of the group. The sort order of shapes outside of a group has also been changed for consistency.
  • It is now possible for all mask types to be added continuously in the mask manager.
  • Fixed an issue where the brush was not properly displayed after being created from the mask manager, and a crash when creating gradients from the mask manager has also been fixed.
  • For all shapes the editable state is now properly set after creation making it possible to move and resize the different parts of the shapes.
  • Fixed a display issue when editing a shape name in the mask manager.
  • Fixed the state of the set operators in the mask manager – when moving a mask up/down we now ensure that the first mask has no operator and that the second one always has an operator assigned. If no operator has been set yet the default (union) operator is used.
  • When using a shortcut to add shapes to a drawn (blending) mask the blending mode will automatically switch to “drawn mask” or “drawn & parametric mask”, depending on what it was before, so that any newly created shape will actually affect the image.
  • In the drawn mask blending mode there used to be an “invert mask” option that had the same functionality as the “toggle polarity” option. Since both were doing the same thing, “invert mask” is now removed.
  • The drawing of masks has been reworked to ensure that all types of masks are drawn in the same way – the central area, border, and highlighted segments are now displayed consistently. The highlighted segment is now more visible, especially for the brush mask, where the highlighted segment was barely distinguishable due to a bug.
  • In the style and copy/paste dialogs a new column has been added to show whether a module uses a mask (drawn/parametric/raster) using the standard mask icon.
  • Editing of drawn masks has been improved – it is now easier to select masks’ control points and path segments (in some cases it was easy to accidentally select the whole path mask rather than a single segment). On-canvas mask rendering has also been improved for better consistency between shape types.
  • The brush path is now slightly more transparent in order to better see the underlying image.
  • Performance Improvements:
  • One of the major highlights of this release is the number of performance improvements and enhancements:
  • The following processing modules have had code cleanup and performance improvements. All SSE2 code paths have been removed (the optimized parallel code generated by the compiler is faster) or code optimized, leading to speed gains of 5-40%:
  • dithering (now called dither or posterize – see below)
  • graduated density
  • input color profile
  • color look up table
  • framing
  • surface blur
  • vignetting
  • retouch
  • denoise (profiled)
  • invert (deprecated)
  • local contrast (local Laplacian mode)
  • lowpass
  • rgb levels
  • input color profile
  • lowlight vision
  • velvia
  • split-toning
  • negadoctor
  • color calibration (CIECAM16, XYZ, and linear/nonlinear Bradford).
  • filmic (legacy – deprecated)
  • filmic rgb (including highlight reconstruction)
  • color balance (legacy)
  • color balance rgb
  • levels (legacy – deprecated)
  • fill light (deprecated)
  • liquify
  • color mapping
  • highpass filter
  • shadows and highlights
  • lens correction
  • grain
  • monochrome
  • highlight reconstruction (inpaint opposed mode)
  • Improvements to a number of core routines have also led to further speed improvements:
  • The interpolation algorithms (Bicubic, Bilinear, Lanczos2, Lanczos3) – used by “rotate and perspective”, “crop and rotate (deprecated)” and for resizing the output.
  • The gaussian generator – used by censorize, denoise (profiled), lowpass, diffuse or sharpen, defringe, RAW chromatic aberrations, base curve, perspective correction, filmic RGB, retouch, tone equalizer and zone System (deprecated)
  • The box blur filter – used by focus peaking, the guided filter for blending, the new highlight recovery algorithms, and the bloom, highpass, haze removal, and soften modules.
  • The Edge-Avoiding a-trous Wavelet – used by contrast equalizer and denoise (profiled).
  • Some parts of the bilateral filter – used in monochrome, lowpass Filter, shadows and highlights, censorize, retouch, color mapping, rotate and perspective, and local contrast.
  • All the blending modes in Lab & RGB for the display-referred and scene-referred workflows.
  • The luminance mask calculation for the tone equalizer.
  • The loader for the JPEG2000 file format.
  • The color adaptation matrices have been transposed to allow for vectorization.
  • The “acquire clusters” operation in the color mapping module has been sped up by a factor of 30 to 200, making the results perceptually instantaneous on clicking the button.
  • Pixelpipe code and caching strategies have been rewritten with significant performance gains when developing in the darkroom.
  • OpenCL support has been added to the sigmoid module.
  • OpenMP support has been added to the XCF export and RGBE loader.
  • The performance of the highlight reconstruction inpaint opposed algorithm has been improved by providing an OpenCL implementation and using internal caching in the darkroom.
  • The guided Laplacian highlight reconstruction mode is now less memory hungry (with a saving of around 40%) and its performance is significantly improved, allowing for more iterations of recovery to be applied by default.
  • Successive changes to sliders and other widgets (for example by dragging, scrolling or using shortcuts) have been made more responsive by creating fewer undo records. This also makes using undo/redo more effective because you are no longer forced to step through every micro-change.
  • Other Changes:
  • The filter section of the preset dialog has been reworked to better show the relationship between raw/non-raw and HDR/monochrome/color. This should avoid the accidental creation of presets that can never apply to any image.
  • ISO range selection has now been improved within the auto-apply presets dialog.
  • Shortcuts assigned to presets or styles will now be shown when hovering over them in the relevant menu.
  • Long-left-clicking a preset will now keep the preset menu open so you can quickly switch between several presets to visualise the effect. You can also scroll over the preset button to switch to previous/next presets (like you already could using shortcuts).
  • Two new sharpness presets have been added to the diffuse or sharpen module – standard sharpness and one with a stronger effect.
  • The color picker code has been completely overhauled resulting in speed improvements due to code paths not being run unnecessarily. Code is now tuned for contemporary processors, using OpenMP features for more succinct code. A time-consuming denoise pass is now only executed when used from the filmic module (in which case removing noise makes the automatic tuning more robust). A monochrome image warning has been removed, along with additional code cleanup, de-duplication and optimization.
  • All remaining color-picker buttons are now accessible via shortcuts and Lua scripts.
  • Histogram calculation code has been modernized, removing SSE code paths. While this doesn’t itself provide any speed improvements, it is used as a model for optimized code using recent OpenMP features. Various pieces of unused code have been removed to provide a consistent internal API. In certain cases this code will produce marginally more accurate results, and in some cases will use substantially less memory.
  • The histogram gui has been reworked. Control buttons have been split into two groups: On the left side, a series of buttons to switch between histogram modes (histogram, waveform, rbg parade, vectorscope); On the right side, the buttons that control the parameters of each mode (RGB Channels, orientation, vectorscope). For the RYB vectorscope, a series of buttons have also been added to visualize guide lines for the most common color harmonies.
  • The zoom widget in the navigation window has been converted to a standard drop-down, better fitting the darktable style.
  • The scroll zoom logic in the darkroom has been reworked in order to make the zoom steps more perceptually-uniform for all image sizes.
  • A new option (preferences > darkroom > middle mouse button zooms to 200%) has been added to control how the middle-mouse-click zoom toggle behaves in the darkroom. Select this option to toggle between fit, 100%, and 200%; disable the option to only toggle between fit and 100%. In the latter case, you can access 200% zoom with Ctrl+middle-click.
  • Snapshots are no longer invalidated when the history is compressed or reset. All snapshot are now stored with their full history and can always be correctly reconstructed.
  • The snapshot list view been redesigned, bringing its display in line with that of the history module. At the same time the module’s label is now shown in the list and is editable with Ctrl+click.
  • The following modules have been deprecated and will be removed for selection in a future version (though they will continue to be available for old edits):
  • levels (use rgb levels instead)
  • contrast brightness saturation (use color balance RGB instead)
  • The ISO 12646 border size was too small in the previous version and this has been fixed.
  • The “default” module group has now been removed and you are now advised to use one of the scene-referred module groups instead.
  • Support has been added for loading QOI and FITS images, and for writing metadata to XCF format (see notes below).
  • The ability to read Exif metadata from AVIF, HEIC and JPEG XL images using native libraries (if not supported by Exiv2) has been added.
  • Exif data is now written to the Exif PNG chunk when using an Exiv2 version 0.28.0 and newer – this is the new standard way to store Exif data in PNG files.
  • Masks are now exported as extra channels in EXR files.
  • Loading of BigTIFF images is now re-enabled, and attempts to use the native LibTIFF-based reader first.
  • Export and thumbnail generation has been redesigned to remove some hacks that had accumulated and should result in a better export size.
  • Various improvements have been made to the debug interface when running darktable from the command-line.
  • Support for lens correction using embedded metadata has been improved.
  • Section headers have been added to the “sort by” drop-down in the top panel (files, times, etc).
  • When the crop module receives focus and switches to an uncropped view of the image, the crop handles around the edges of the image now briefly light up to indicate that they can be clicked-and-dragged.
  • As long as the crop covers the full image (and moving it by dragging is therefore impossible) the sensitive zone for dragging corners and edges is enlarged.
  • While the crop module shows the whole image to facilitate making adjustments, it will no longer trigger a pipe recalculation until the module loses focus (for example by switching to another module or by collapsing the crop module) at which point the new crop will be used to resize the image. If shortcuts are used to make changes to the crop without focusing the module, these will still be implemented immediately.
  • Removed the commit button from the crop module as it was no longer used.
  • The height of resizeable module areas can now be changed by clicking and dragging the bottom of the resizeable area. The previous method to achieve this, by scrolling while holding the control key, has been changed to Shift+Alt+scroll (and a note added to all tooltips). This frees up Ctrl+scroll for fine-tuning changes in RGB Levels or the histogram (to change exposure or black level). In the navigator preview Ctrl+scroll now adjusts zoom level without bounds, as it already does over the central image area.
  • The module instance name in the darkroom has been altered so it is more clearly separated from the module name (using a “bullet” separator). The label name in the history module has also been updated accordingly.
  • The display of the range rating widget in the collection filters module and top panel has been improved to give it better contrast/icons, which should make it more easily readable.
  • The search filter in the collection filters module and top panel has been improved to also allow searching for camera brand and model.
  • In the lighttable view, the “hold” and “sticky” preview shortcuts are now linked to the same action – previously there were two “toggle sticky preview mode” actions, one with and one without focus detection. Focus detection can now be selected (in shortcuts) via an element, and hold/toggle via an effect. All mapped shortcuts are shown in the tooltip of the preview layout button.
  • A full copy-and-paste is now always performed in overwrite mode (replacing the history of the target image), since append mode is often the less appropriate choice – for example, for some modules it often makes no sense to add extra instances.
  • The style tooltip now immediately shows module details while waiting for the preview image to be calculated.
  • The tooltips in the liquify module’s shape tools are now consistent with the blending drawn mask tools.
  • The “demosaicing for zoomed out darkroom mode” preference has been removed. This option is no longer necessary due to improvements in the pixelpipe cache and previously could have led to slight differences in darkroom processing.
  • The Exif focus distance field is now read for images taken with Nikon Z bodies.
  • When reading creator metadata from IPTC Information Interchange Model, darktable now prefers By-line over Writer/Editor. Date/time and description metadata are read from commonly-used properties.
  • The rendering of the arrow that joins source and target shapes in the retouch module has been reworked to be more consistent between shapes. All source/target shapes are now linked with an arrow rather than a simple line and are rendered in such a way as to avoid crossing over the shapes themselves (by connecting the closest source/target borders).
  • The full-frame-equivalent focal length and crop factor is now shown alongside the actual focal length in the image information module.
  • New options have been added to the watermark module for more fine-grained control over scaling. In conjunction with the new ‘fixed-size-text’ template it is now possible to insert text with constant font size.
  • Encoder ring and button lights of the Behringer X-Touch Compact are now supported via midi. Unmapped encoder presses fall back to reset the encoder.
  • Midi buttons mapped to the reset effect of a slider or combo (either directly or via fallback, like the row below the faders of the X-Touch Compact) now light up if the current value is not the default.
  • Resetting a combobox that has sub-headers (by double clicking or via a shortcut) will now choose the first selectable item.
  • Requests to switch images in the darkroom (via space/backspace/filmstrip) used to be quietly ignored if a recalculation was currently ongoing. Now, they will be processed as soon as the pipe is ready. Any changes that were made to the previous image while waiting will be discarded.
  • Manual per-color black point adjustment is now possible for non-CFA (a.k.a. linear) raw images. Note that file-embedded levels might still not be set automatically on import.
  • The dithering module now also includes posterization modes and masking, and is therefore renamed to “dither or posterize” to make the new functionality more discoverable.
  • Help buttons have been added to several dialogs and preference tabs to allow direct access to the relevant online manual entries.
  • A new version of fimic color science – v7 (2023) – has been added and is now the default. This version replaces the color preservation drop-down with a slider to control the saturation of the highlights. This slider is used to control a mixture between the previous “max RGB” and “no preservation” modes.
  • It is now possible to import the following additional metadata keys:
  • Iptc.Application2.Byline
  • Iptc.Application2.DateCreated
  • Iptc.Application2.TimeCreated
  • Exif.Image.ImageDescription
  • The shadows and highlights module now uses the bilateral filter by default as this avoids the halos common to the previous (Gaussian) default.
  • Some new aspect ratios have been added to the framing module:
  • CinemaScope
  • US Letter
  • US Legal
  • Standard print sizes (5x7, 8x10, 11x14)
  • A new tooltip has been added to the edges of sliders with soft limits describing how to set values outside those boundaries.
  • When deletion of a physical file (or movement of that file to trash) fails, the clarity and usability of the “further action” confirmation dialog is now improved.
  • It is now possible to see the current image’s embedded ICC profile as a tooltip in the input profile module.
  • A warning message is no longer shown when multiple color calibration module instances are used with masks. This approach is commonly used to handle multiple light sources and is considered to be correct usage of the module.
  • It is now possible to calibrate colors using the Spyder Checkr Photo color checker in the color calibration module.
  • Bug Fixes:
  • Fixed an issue where the sort order in the top panel was reset to ‘filename’ on every collection change.
  • Fixed an issue whereby modules were not always reset to their initial state when pressing the reset button. This fix is related to the rework of the auto-application of default parameters described above.
  • XMP regions (e.g. from camera face recognition) are now properly transformed from metadata to ensure they match the image.
  • Fixed some rounding issues in the calculation of the borders in the framing module. Borders on opposite sides are now created with the same size.
  • Fixed entering a custom aspect ratio in the framing module.
  • Code maintenance and bugfixes have been made for writing dng files in the “Create HDR” functionality
  • Fixed some pixelpipe cache issues related to mask visualization and internal module histograms (e.g. within RGB curve). This ensures a better hit in the cache leading to better performance, and also avoids some refresh issues.
  • Fixed calling darktable with --threads n so that it does not permit using more OMP threads than are available on the host.
  • The raw chromatic aberrations module has been amended to always use the entire image, and so now works correctly at all darkroom zoom levels.
  • An issue with setting the active item in a combox having varying content using a shortcut (or lua’s dt.gui.action) has been fixed. It is also now possible to directly set the values of the comboboxes for the focused module’s blending mode etc. by setting the shortcut’s effect.
  • The module presets menu has been fixed to allow the currently-used preset to be updated in more situations. For example after entering the darkroom and modifying some module parameters the “update preset” entry was not previously selectable and the user had to first select the preset and then update the parameters again.
  • The color picker sample area calculation has been fixed to ensure that at least one pixel is always selected. At large zoom levels and with a very small area some rounding errors previously could result in an empty area selection and therefore an incorrect color sample.
  • The “ignore EXIF rating” import option has been fixed for images containing the XMP.xmp.Rating tag. This does not change the rating if an XMP file is found with some specific rating already entered.
  • Minor memory leaks have been fixed in some modules.
  • Fixed a possible crash when selecting the original module history state and compressing the history stack.
  • Fixed a possible crash in gradient mask creation due to an issue in the implemented parallelism.
  • Fixed an issue with the “look for updated XMP files on startup” option that caused mismatches to be incorrectly reported every time darktable was started up. The fix ensures that the XMP and database timestamps are correctly aligned.
  • The placement of the brush correction tool has been fixed in the retouch module. This issue was more visible on images that had been distorted by other modules earlier in the pipe.
  • Some differences between CPU and OpenCL output have been fixed in the PPG and VNG/VNG4 demosaicers, as well as the match greens and color smoothing options.
  • The (hidden) final scale module now properly uses the same user-defined scaling mode for image and masks.
  • Fixed import of Nikon camera make and model Exif so that opening the image in the darkroom is no longer required, and import now also works for non-raw files.
  • Fixed an issue where Canon CR3 metadata crop was not being ignored. The full visible sensor area (as determined by LibRaw) is now always used on new imports.
  • Fixed to give priority to XWayland when using Wayland, since use of native Wayland is the cause of many issues in darktable.
  • When using the spot exposure mapping mode, properly reset the mode to “correction” when changing image.
  • Fixed a bug where the highlight reconstruction module could be enabled on images for which it cannot be used, such as JPEG files.
  • Fixed a border issue in the inpaint opposed highlight reconstruction algorithm, whereby some pixels on the border of the image were not correctly handled by the algorithm. This may lead to a small difference on the border of the image and will avoid some possible reddish borders.
  • Fixed an issue in the segmentation highlight reconstruction algorithm, whereby the mask display could be broken due to the module accessing some uninitialized data.
  • Fixed to avoid writing to an XMP file if it was not requested and the image was not altered. This rule is now also properly applied when importing RAW + JPEG.
  • Fixed to make sure the database timestamp is always set when an XMP sidecar file might be written.
  • A workaround was implemented for the mouse hover effect over sliders and dropdowns, which used to cause the whole side panel (including the histogram) to be redrawn on each mouse movement between widgets. This has been fixed and should result in lower CPU consumption.
  • In the rotate and perspective module, if the current rotation is close to ±180 degrees, adjusting it by drawing a horizon line with right-click+drag could lead to it being clipped at the end of the slider. This has been fixed so that the rotation angle correctly wraps around when it reaches ±180. A manually-entered value outside the range (like 182) will be similarly wrapped (to -178).
  • Fixed loading of monochrome images.
  • Fixed the display of tiny circular masks to ensure that the mask is always visible.
  • Fixed the loading of the OpenCL library when the required symbols are not fully implemented.
  • The imported EXR image size is now set to the extent of the valid data window only.
  • Collection sort names are now properly translated in the recent collection sort history pop-up.
  • Fixed dual demosaicing options for 4-color Bayer sensor cameras where only VNG4 and PassThrough are supported.
  • Fixed to no longer truncate focal length on thumbnails to avoid loss of display precision.
  • Fixed a possible crash caused by use of detail masks when switching to the darkroom.
  • Fixed feathering masks in lens correction, retouch, liquify, and spot removal modules.
  • Fixed some rare cases where masks were not displayed when trying to edit them after just starting darktable or changing module group.
  • Fixed slideshow issues on HiDPI displays.
  • Fixed crashes when using raster masks after reordering the pixelpipe.
  • Fixed use of details mask in blown-out parts of the image.
  • Allow adding color patch on 7x7 grid of the color checker module.
  • Feathering input fixed when using distorting modules like retouch or lens correction.
  • Fixed a long-standing potential memory bug in the interpolation code, though one which never has occurred due to how that code is used in darktable.
  • Reworked the metadata editor to prevent possible data loss.
  • Fixed import of auto-applied presets where the upper bound of ISO, aperture and exposure could be incorrectly set as the lower bound.
  • Fixed the pin icon update in the collection filters module, which could crash darktable when using some specific filter combinations.
  • Fixed the rating toast message not being shown when rating a collapsed group of images using a keyboard shortcut.
  • Fixed a possible crash in the astrophoto denoise module when used on CPU (not an issue for OpenCL).
  • Fixed some minor issues with the Spyder Checkr 48 (v2 - after 2018) reference values.
  • Fixed a possible crash in the Edge-Avoiding a-trous Wavelet when handling very small image regions.
  • Properly ignore empty GPX latitude/longitude which would otherwise create bogus location coordinates.
  • Fixed saving of position in the collections module’s history and recent collections module. This fix ensures that activating a history entry correctly restores the thumbnail offset to the point at which the entry was saved.
  • Fixed to avoid possible unwanted flipping of the selected image when entering the print view due to filmstrip thumbnails being updated.
  • Fixed an issue in the crop module, where Shift+dragging on an edge only allowed the crop area to be made larger (while maintaining the aspect ratio) and could not make it smaller. Previously this feature only worked correctly when dragging a corner.

New in darktable 4.2.1 (Feb 22, 2023)

  • The Big Ones:
  • Other Changes:
  • JPEG files are identified using magic bytes instead of file
  • Extension. This helps in cases where JPEG images end up in
  • Files with unexpected extensions.
  • Allow shortcuts to be assigned to the "quick access" style and preset
  • Menus at the bottom of the darkroom view
  • Add a collapsible section to the sigmoid module so that
  • Controls not used in standard processing scenarios are hidden
  • By default.
  • Some minor modifications to image overlays in culling view to make
  • Them less intrusive.
  • Bug Fixes:
  • Fix possible bad pinned memory transfer on OpenCL.
  • Fix bug in date/time sanitization function that caused image capture
  • Timestamps to be corrupted when they contained a time zone with a
  • Negative offset.
  • Fix toast messages containing "%".
  • Fix collections module using exclude rules when the first filter is empty.
  • Fix RGB curve histogram display when "compensate middle gray" is set.
  • Fix possible infinite loop when a module fails to load.
  • Properly honor "hide histogram" setting when restarting.
  • Fix darktable-chart crash.
  • Fix Y0 mask calculations in the demosaic module.
  • Avoid using fscanf() for loading configuration to avoid broken Windows
  • Implementation.
  • Add RYB vectorscope option to the darktable configuration file to
  • Ensure proper histogram view settings on startup.
  • Ensure that wide popups are properly shown on the same display as
  • The associated widget.
  • Fix possible crash in camera tethering.
  • Make yes/no buttons in dialog boxes respond to standard shortcuts alt+y
  • And alt+n.
  • Fix preferences sanitization, which was completely ineffective due to
  • Incorrect loading order.
  • Add a link to the sigmoid module's online documentation.
  • Fix tooltip on color calibration expander.
  • Fix incorrect reporting of HEIF image bit depth, which resulted in
  • Incorrect color profile selection for images without embedded color
  • Profile data.
  • Fix snapshot invalidation, which was too pessimistic and made
  • Switching snapshots slow.
  • Fix some messages in LUT module.
  • Changed Dependencies:
  • Update bundled LibRaw version to 0.21.1.
  • For systems providing LibRaw 0.21.1 or newer, it is now possible to disable building the bundled copy by defining -DDONT_USE_INTERNAL_LIBRAW=ON
  • Mandatory:
  • Bump minimum required CMake version from 3.10 to 3.18.
  • Optional:
  • Bump libheif minimum required version from 1.9.0 to 1.13.0.
  • Relax libavif minimum required version from 0.9.1 back to 0.8.2.
  • RawSpeed changes:
  • Massive Fuji decompressor refactoring, up to -25% less wall time
  • Fuji GFX100(S): fix 16-bit sensor black/white levels
  • Fix decoding of compressed Fuji raws with large filesize
  • Camera support, compared to 4.2.0:
  • Base Support:
  • Canon EOS Kiss X10
  • Canon EOS Kiss X10i
  • Leica M9 (dng)
  • Nikon Z 30 (12bit-compressed, 14bit-compressed)
  • OM System OM-1
  • OM System OM-5
  • Panasonic DC-G95D (4:3)
  • Panasonic DC-G99D (4:3)
  • Ricoh GR IIIx (dng)
  • Missing Compression Mode Support:
  • Fujifilm "non-lossless"/lossy
  • Nikon high efficiency
  • Sony lossless
  • White Balance Presets:
  • Nikon Z 9
  • Noise Profiles:
  • Fujifilm GFX100S
  • Fujifilm X-H2
  • Fujifilm X-H2S
  • OM System OM-1
  • Sony ILCE-7SM3
  • Canon EOS 250D / Kiss X10 / Rebel SL3 / 200D Mark II
  • Canon EOS R7
  • Suspended Support:
  • Creo/Leaf Aptus 22(LF3779)/Hasselblad H1
  • Fujifilm FinePix S9600fd
  • Fujifilm IS-1
  • GoPro FUSION
  • Kodak EasyShare Z980
  • Leaf Aptus-II 5(LI300059)/Mamiya 645 AFD
  • Leaf Credo 60
  • Leaf Credo 80
  • Minolta DiMAGE 5
  • Olympus SP320
  • Panasonic DMC-FX150
  • Pentax Q10
  • Phase One IQ250
  • Samsung GX10
  • Samsung GX20
  • Samsung EK-GN120
  • Samsung SM-G920F
  • Samsung SM-G935F
  • Sinar Hy6/ Sinarback eXact
  • ST Micro STV680

New in darktable 4.2.0 (Dec 21, 2022)

  • The Big Ones:
  • The following is a summary of the main features added to darktable 4.2. Most of these features are described more fully in the user manual.
  • New Sigmoid display transform module, which can be used in place of the filmic and base curve modules.
  • Two new algorithms are provided in the highlight reconstruction module:"inpaint opposed" and "segmentation based". The "inpaint opposed" algorithm has proved to be very stable and provides good results in many images, so it replaces "clip highlights" as the new default algorithm.
  • The pixelpipe used for image display in the darkroom view has been reworked so that it can be used elsewhere (darkroom view, second display window, duplicate manager, style preview, snapshot routine). This has allowed for code de-duplication as well as enhancement of many of these features see below).
  • The second darkroom image window has now been enhanced to support both the focus peaking and ISO-12646 color assessment modes.
  • The snapshot module has been entirely reworked so that, instead of using a fixed screen capture it now uses a dynamically generated view using the new pixelpipe functionality. This means that it can now be zoomed and panned with keyboard/mouse.
  • The duplicate manager previously used a different pipe routine to calculate its previews (i.e. when long-pressing on a duplicate image thumbnail) which often meant that the displayed duplicates differed from the main darkroom view in subtle ways. Use of the new pipe routine now means that these previews will be identical to those produced during darkroom editing.
  • It is now possible to preview the effect of a user-generated style on an image before applying it. Simply hover over the style name in either the lighttable styles module or the darkroom quick-access menu and a
  • new tooltip will appear, showing the image with the style applied along with details of the modules that are included.
  • Some cameras record lens correction information within the image EXIF metadata. The lens correction module has been enhanced so that it can extract this data and use it to correct lens distortions.
  • darktable is now able to read and write JPEG XL images Processing and utility modules have been altered so that if a module is not entirely visible when expanded, it will be automatically scrolled until the entire UI is visible on screen.
  • For users who currently use the "scroll to the top when expanded" preference setting to achieve this effect, this change may provide a better alternative.
  • As part of this change, a new animation effect has been added when expanding/collapsing modules. The speed of the expand/collapse animation can be controlled via a preference setting preferences > miscellaneous > duration of ui transitions). Set this to zero to disable the animation.
  • The pixelpipe caching functionality has been completely overhauled. More cachelines are used with an improved hit-rate while controlling the total amount of memory used, leading to a significantly faster interface.
  • The slideshow has been rewritten for a better user experience.
  • A small preview is displayed while the full image is computed to provide feedback to the user that something is being done in the background.
  • A new drop-down menu has been added to the top filter bar to allow filters to be easily added and removed. Some range widgets have been removed from this list as they are not easily readable on the top bar.
  • The UI of the range rating filter widget has been reworked for better readability. This revised widget is designed to be easier to use and more efficient.
  • Other Changes:
  • Added support for manipulating shapes without using the mouse scroll-wheel for tablet users). The mask manager has been enhanced with a new collapsible section containing controls for changing shapes properties.
  • It is also possible to change a property that is shared by a group of shapes.
  • The circle and ellipse shapes have also been enhanced with new on-canvas controls to change the mask size and feathering.
  • WebP read support has been added.
  • Embedded ICC profiles are now supported in exported WebP files. Double-clicking on a notebook tab now resets all widgets within that tab. Regional date/time format is now supported in thumbnail tooltips.
  • Lua commands are displayed in a widget's "action" tooltip.
  • The SSE code path has been removed from the white balance and output color profile modules as compiler defaults now provide a similar speed.
  • Added support for JFIF (JPEG File Interchange Format) file extension which is an extension of the JPEG standard).
  • The preference to auto-apply a sharpening has been removed. For users who still require this functionality, it can be easily achieved with a user-generated auto-applied preset.
  • Added support for updating existing pictures in Piwigo export.
  • All white balance presets have been migrated to an external JSON file. This should not affect the module's operation.
  • The preferences to set the layout of the "color balance module" and the colors of the "white balance" module have been removed from the global preferences dialog, as these controls are already available directly within
  • the respective modules.
  • Improved profile support for AVIF & EXR format. Also relax AVIF reader support by not requiring full compliance.
  • The current collection image count is now shown in the top bar beside the image filters meaning that it is available even when the top hinter area is hidden.
  • Attempt to obtain the color-space for PNG files from the cICP chunk. This was added in a recent revision of the PNG spec, so we take advantage of it, if present.
  • Reading of 16-bit half float for the TIFF format is now undertaken using the Imath library.
  • The format and storage parameters in the export module can now be mapped to shortcuts.
  • Introduced balanced "OpenCL vs CPU" tiling. This makes it possible to use CPU tiling if there is not enough memory on the OpenCL card which would require a lot of tiles to be handled on the card). In the end, the large number of tiles plus the overlapping area would make the use of the OpenCL code path slower (or much slower) than handling the image without tiling on the CPU.
  • In preview mode (when pressing Ctrl+w) the image information overlay display block is no longer shown by default. Moving the cursor within the top half of the preview image will cause the overlay to appear, and it will then disappear again after a brief period.
  • Light patterns are set for Behringer b-control midi rotors BCR2000/BCF2000)
  • Fixed reading of EXIF metadata when importing EXR files (if desired, existing files must be re-imported, as it is not possible to refresh metadata).
  • Added support for scrolling through a module's presets using shortcuts. Panels now use "natural sizes" by default, meaning that their initial size adjusts according to screen resolution.
  • The geo-tagging module now better supports narrow side-panels by wrapping rather than ellipsizing text.
  • More actions have been added to the main help screen (displayed by pressing the h key).
  • The lensfun library is now a mandatory dependency. This ensures that all darktable builds correctly include the lens correction module.
  • This also means that an edit made using this module won't be inadvertently lost due to missing build dependencies.
  • It is now possible to assign shortcuts to the "currently focused" processing module. This allows a common set of shortcuts to be created and reused in multiple modules simply by focusing that module. For example a single key shortcut applied to the "first slider" will affect the "exposure" slider when the exposure module is focused, and the "rotation" slider when the "rotate and perspective" module is focused. Similar functionality can be used to
  • affect the "nth" slider, combobox, button or tab as well as the focused module itself.

New in darktable 4.0.1 (Sep 18, 2022)

  • Other Changes:
  • Variables $(MAKER) and $(MODEL) can now be used when importing files.
  • Display infinity for very large focus distance as supported by the
  • exif standard.
  • Bug Fixes:
  • Fix overexposed indicators after cropping.
  • Fix DNG creation in the HDR merge module (ColorMatrix could be zero).
  • Fix culling layout, which could be broken after a second use when
  • changing the number of images (e.g. when rejecting an image).
  • Fix GUI reset of the export module when using TIFF format.
  • Fix copy of iop-order in merge mode when multiple instances are used in
  • the destination images.
  • Fix color filtering issue on Windows.
  • Fix possible black screen when using auto-white balance on Windows.
  • Properly retain the access and modified timestamps when using copy and
  • import.
  • Fix color picker reset in color zones module.
  • Fix help link for module layout management.
  • Fix crash after a failed camera tethering attempt.
  • Add support for fast pipe mode on the diffuse module. Fast pipe mode
  • is used to bypass long-running modules while interactively changing another
  • module's parameters where that module does not require accurate image display.
  • For example, it is used to improve responsiveness of the on-screen display in the
  • crop and rotate/perspective modules.
  • Fix some color picker button action types.
  • Fix crash in Latex export.
  • Fix website gallery export.
  • Fix a file-handle leak.
  • Fix a memory corruption in sharpen module that could lead to a
  • crash.
  • Fix vectorscope histogram display to avoid cropping the primary and
  • secondary nodes (top and bottom).
  • Add HEIF media type association for the desktop.
  • Fix possible crash when using the color checker without a properly
  • selected patch.
  • Fix sorting of LUT 3D files and left-align the entries for
  • better readability.
  • Disable upscaling when export size is set to original image dimensions (0)
  • as this does not have meaning and could crash darktable.
  • Fix possible crash when applying a time-offset to images.
  • Fix crop-size information displayed on screen (rounding issue).
  • Fix blending detail mask memory requirement.
  • Fix crash when zooming with fingers on an empty lighttable.
  • Ensure that external format size limits are enforced during export.
  • Some CSS fixes on color, contrast, positioning of combo-boxes,
  • check-box size, scrollbars and progress bars.
  • Fix JPEG APP1 header (skip 6-byte header).
  • Fix some missing translations in notebook tabs.
  • Use a color-managed background for color balance rgb module sliders.
  • Light up midi modifier keys when shift/ctlr/alt are pressed.
  • Some speed improvements (tuned compiler options, some optimized
  • routines)
  • Camera support, compared to 3.8:
  • Base Support:
  • CANON EOS R7
  • CANON EOS R10
  • White Balance Presets:
  • Noise Profiles:
  • NIKON D780
  • NIKON D4s
  • CANON EOS M50 Mark II
  • CANON EOS 850D
  • Custom Color Matrices
  • Suspended Support
  • No samples on raw.pixls.us:
  • Canon EOS M2
  • Creo/Leaf Aptus 22(LF3779)/Hasselblad H1
  • Fujifilm FinePix HS50EXR
  • Fujifilm FinePix S6000fd
  • Fujifilm FinePix S9600fd
  • Fujifilm IS-1
  • GoPro FUSION
  • Kodak EasyShare Z980
  • Leaf Aptus-II 5(LI300059)/Mamiya 645 AFD
  • Leaf Credo 60
  • Leaf Credo 80
  • Leica D-LUX 6
  • Minolta DiMAGE 5
  • Nikon 1 J4
  • Nikon 1 S1
  • Nikon Coolpix P7700
  • Nikon D1H
  • Nikon D2H
  • Nikon D3S
  • Olympus E-10
  • Olympus SP320
  • Olympus SP570UZ
  • Panasonic DMC-FX150
  • Panasonic DMC-G2
  • Pentax K200D
  • Pentax K2000
  • Pentax Q10
  • Phase One IQ250
  • Samsung GX10
  • Samsung GX20
  • Samsung NX5
  • Samsung NX10
  • Samsung NX11
  • Samsung NX20
  • Samsung NX2000
  • Samsung EK-GN120
  • Samsung SM-G920F
  • Samsung SM-G935F
  • Sinar Hy6/ Sinarback eXact
  • Sony DSLR-A380
  • Sony DSLR-A560
  • ST Micro STV680
  • Translations:
  • Czech
  • Brazilian Portuguese
  • Chinese - China
  • Chinese - Taiwan
  • Dutch
  • Esperanto
  • European Spanish
  • Finnish
  • French
  • German
  • Hebrew
  • Hungarian
  • Italian
  • Japanese
  • Russian
  • Slovenian
  • Turkish
  • Ukrainian

New in darktable 4.0.0 (Jul 3, 2022)

  • The Big Ones:
  • The following is a summary of the main features added to darktable 4.0. These features are described more fully in the user manual and accompanying blog post.
  • Color and exposure mapping:
  • A new feature in the "exposure" and "color calibration" modules allows you to define and save a target color/exposure for the color pickers, in order to match any source object in the image against an arbitrary target color. This can be used to perform white balance (chromatic adaptation) against non-gray objects of known color, or to ensure the color consistency of an object across a series of images.
  • Filmic v6:
  • Filmic v6 introduces new color science. This change removes the mandatory desaturation close to medium white and black and replaces it with a true gamut mapping against the output (or export) color space. This allows for more saturated colors, notably in blue skies.
  • For users who still prefer the "desaturated highlights" look, you can still do this by disabling chroma preservation, but v6 adds a hue handcuff to prevent the traditional hue shift that comes with this method (where saturated blue skies degrade to cyan and saturated red to yellow).
  • This gamut sanitization is the third and last to be added to darktable, which now has a fully-sanitized color pipeline from input (color calibration), through artistic changes (color balance rgb) to output (filmic v6). Users can now color-grade pictures safely in the knowledge that invalid input colors can be recovered in the least destructive fashion possible early in the pipeline, and valid colors can't be pushed out of gamut along the pipeline.
  • Note: If modules are applied after filmic in the pipeline, they don't benefit from this gamut mapping and rely on LittleCMS2 (if enabled) at the final export stage, which does not gamut map as it should, and probably never did.
  • Guided laplacian highlight reconstruction:
  • A new "guided laplacian" method has been added to the "highlight reconstruction" module. This uses an iterative and multi-scale wavelet scheme to extract valid details from non-clipped RGB channel(s) if any, uses these details to guide the reconstruction of clipped channels, and finally propagates the color gradients from neighboring valid regions using edge-aware color diffusion. This limits color bleeding through edges (preventing green leaves from bleeding color in the reconstruction of clipped blue sky, for example).
  • A noise setting allows Poisson noise to be added to reconstructed highlights, in order to help blend them into noisy high-ISO images.
  • This method is only available for Bayer sensors and cannot be adapted to X-Trans sensors.
  • Introducing the darktable Uniform Color Space 2022:
  • The darktable UCS 22 is a perceptually uniform color space designed from psychoperceptual experimental data specifically for the purpose of artistic saturation changes, as performed in the color balance RGB module. It uses a brightness-saturation scheme that compensates for the Helmholtz-Kohlraush effect (accounting for the contribution of colorfulness in perceived brightness) and allows an efficient gamut-mapping against pipeline RGB at constant brightness. It will make the saturation control in color balance RGB better behaved.
  • UI Rewrite:
  • The UI has been completely revamped again to improve look and consistency. Padding, margins, color, contrast, alignment, and icons have been reworked throughout.
  • Collapsible sections within modules have also been redesigned so that their functionality is more obvious and better-looking.
  • New collapsible sections have been added to avoid cluttering the UI in the following modules:
  • channel mixer rgb
  • exposure
  • color calibration
  • The vignetting module has been split into two sections for clarity.
  • Superfluous sections have been removed from the "crop" and "white balance".
  • Support has been added for the IPAPGothic font.
  • The module-description tooltips have been reworked to ensure better layout.
  • Finally the default theme has been changed to Elegant Grey. The darktable default is now in line with the theme recommended by the team.
  • Performance and OpenCL support changes
  • All performance and OpenCL settings and pixelpipe optimizations have been fully reviewed and updated. Many new optimizations have been added and the user preferences have been simplified.
  • All configurations are now per-device allowing each OpenCL device to be tuned separately.
  • Performance configuration is now applied at runtime and no longer requires darktable to be restarted when changed.
  • Some modules had incorrect or overly conservative tiling factors, which made darktable unnecessarily slow (since tiling was used when it was not required)
  • The followimg modules have been updated:
  • demosaic (X-Trans)
  • retouch
  • Other Changes:
  • Color glossary:
  • The global color picker tool (in the darkroom's left sidebar) now displays the name of the picked color in the tooltip. This feature was requested by several color-disabled photographers, to assert the perceptual validity of their editing for an average observer.
  • The color vocabulary contains 76 entries: 15 hues × 5 lightnesses + neutral (gray). It does not separate across the chroma axis, so all colors are registered the same no matter their colorfulness.
  • The vocabulary also contains average skin colors for 3 body parts (forearm, forehead and cheek) of 6 ethnicities (Chinese, Thai, Kurdish, Mexican, Caucasian, African-American). These values come from the academic databases of cosmetology and dermatology available at the time of programming. They are only valid for a D65 illuminant and for an exposure setting that anchors diffuse white at 92% relative luminance.
  • A new "contrast" parameter has been added to the guide line overlay settings, allowing for better visibility of the lines over images.
  • A new "collection filters" module has been introduced, designed to be easier to use than the filtering in the current "collections" module.
  • The new module allows the current collection to be sorted and filtered using multiple criteria. Each sort/filter rule can be pinned, which duplicates the appropriate control on the top tool bar for quick access.
  • The following filters have been implemented (more to come in the next version):
  • color labels, text search, date-time filters, exposure, ISO,focal length, aperture, aspect ratio, filename and extension, grouping, history, local copy, module order
  • Presets can be created and a history button also allows previous configuration to be retrieved.
  • All-new text and color filter widgets have been implemented.
  • The "recently used collections" module is now incorporated into the "collections" module as a "history" button
  • The darkroom's module search facility has been enhanced to also match on any user-defined module names.
  • Support for EXR 16-bit (half) float export has been added.
  • All usage of dates/times have been reworked to better support time-zones and differing operating systems. Support for milliseconds has also been added.
  • All presets in the "tone equalizer" module have been updated to use scene-referred blending modes.
  • The new input system introduced in version 3.8 now handles simultaneous shortcut presses and the responsiveness is greatly improved.
  • MIDI configuration parameters are now specified in darktable resource files.
  • Slider step sizes have been standardized and can now be configured individually.
  • Extra pen tablet button clicks are now treated as key presses so that they can be used in shortcuts.
  • Support for gamepad triggers has been added (treating them as buttons) allowing them to be used as shortcuts.
  • Modifiers (Ctrl/Shift/Ctrl+Shift) can now be used when dragging sliders, to modify the precision of the value changes.
  • When using the "copy" and "move" functionality in the lighttable, the last directories are remembered independently for each operation.
  • It is now possible to scroll over a tabbed module to switch tabs.
  • Improved monochrome images support:
  • True monochrome images (like those from Leica) and images from cameras that have the color matrix filter in front of the sensor removed, are now treated the same in the user interface as much as possible.
  • The tagging suggestion mode has been improved.
  • The overlay layout in the print view has been enhanced.
  • The "retouch" module's heal iteration limit has been increased for new edits.
  • It is now possible to edit a single node on a brush path. You can change the size, opacity and hardness of each node independently.
  • A new button in the "highlight reconstruction" module allows clipped pixels to be better visualized.
  • The raw overexposure function now shows actual sensor clipping rather than being adjusted according to the white balance of the image. This is better suited to the default scene-referred workflow.
  • Shortcuts can now be directed to the currently-focused processing module instance instead of the currently-expanded one.
  • The control of the lighttable view has been improved by ensuring the up/down and left/right keys have the expected behavior.
  • Apply a blur when color picking in area mode. This ensures that color picker measurements aren't overly influenced by image noise. This change particularly improves the stability of filmic's black relative exposure measurement.
  • Add support for DNG GainMap EXIF information and update the pixel gain in raw-prepare module. This gives a better initial exposure to the imported DNG pictures.
  • Bug Fixes:
  • Check for total memory on Linux is now more portable.
  • MIDI buttons with light status are now properly updated.
  • Tab shortcut tooltips are correctly displayed on tabbed modules.
  • Misalignments between source and target patches in the retouch module have been resolved. "Jumpy" movements are also improved when adjusting nodes or segments.
  • The start of culling mode is improved, especially where no images are selected and/or under the mouse.
  • Local-copy status icon position fixed in block overlay.
  • Crop handle positions fixed when using fast movements.
  • RCD OpenCL tiling issues resolved.
  • Tile stitching for X-Trans sensors
  • Filmstrip update fixed if crop is left open when moving to next image.
  • "collections" module now correctly updated when new images are imported.
  • Landscape/portrait print handling was broken due to a recent CUPS change. We now rely on the CUPS filter for the proper orientation.
  • Fixed possible PDF corruption in export and print modules due to duplicate written byte count.
  • Fixed a possible race conditions in retouch and color reconstruction OpenCL code making darktable crash.
  • Properly transform points for the rotation computation in perspective correction. This fixes an issue when the image is flipped making it impossible to use the rotation control.
  • Removed RatingPercent in EXIF data as it is not standardized and can confuse the Windows image viewer.
  • Fixed label/reject behavior when multiple images are selected:
  • When attempting to reject multiple images, they will now be set to rejected if any of them are not currently rejected. They will be set to un-rejected if all of them are currently rejected.
  • This allows for more predictable handling of images with inconsistent reject statuses.
  • Similar changes have also been made when toggling color labels on/off.
  • Fixed white balance preset lookup in the "white balance" module.
  • Fixed some possible missing refresh of the metadata editor.
  • Fixed possible translation issue on Windows.
  • Camera support, compared to 3.8:
  • Base Support:
  • White Balance Presets:
  • Nikon D4S
  • Panasonic DC-S5
  • Sony ILCE-7M4
  • Noise Profiles
  • Custom Color Matrices
  • Suspended Support
  • No samples on raw.pixls.us:
  • Canon EOS M2
  • Creo/Leaf Aptus 22(LF3779)/Hasselblad H1
  • Fujifilm FinePix HS50EXR
  • Fujifilm FinePix S6000fd
  • Fujifilm FinePix S9600fd
  • Fujifilm IS-1
  • GoPro FUSION
  • Kodak EasyShare Z980
  • Leaf Aptus-II 5(LI300059)/Mamiya 645 AFD
  • Leaf Credo 60
  • Leaf Credo 80
  • Leica D-LUX 6
  • Minolta DiMAGE 5
  • Nikon 1 J4
  • Nikon 1 S1
  • Nikon Coolpix P7700
  • Nikon D1H
  • Nikon D2H
  • Nikon D3S
  • Olympus E-10
  • Olympus SP320
  • Olympus SP570UZ
  • Panasonic DMC-FX150
  • Panasonic DMC-G2
  • Pentax K200D
  • Pentax K2000
  • Pentax Q10
  • Phase One IQ250
  • Samsung GX10
  • Samsung GX20
  • Samsung NX5
  • Samsung NX10
  • Samsung NX11
  • Samsung NX20
  • Samsung NX2000
  • Samsung EK-GN120
  • Samsung SM-G920F
  • Samsung SM-G935F
  • Sinar Hy6/ Sinarback eXact
  • Sony DSLR-A380
  • Sony DSLR-A560
  • ST Micro STV680

New in darktable 3.8.1 (Feb 11, 2022)

  • The Big Ones:
  • Two new languages are now available for the documentation: Spanishand Dutch. This brings the total number of translations to six. Thanks to all the translators for their hard work.
  • Other New Features And Changes:
  • Speed up the retouch's heal tool by using better parallelism.
  • Add new variable $(DARKTABLE_VERSION).
  • Bug Fixes:
  • Fix control and feather points for path and brush shapes when editing using zoom > 200%. The editing is now smooth and no longer jumps as the mouse is moved.
  • On the lighttable view, fix Shift-click when selecting a range - at least one image must first be selected.
  • Fix expansion of some variables on Windows.
  • Fix SVG rendering by computing proper dimension in the watermark module with libsvg 2.52.
  • Fix printing when the export module is set to scale mode. This was caused by a bug in the interaction between export/print.
  • Fix print module image layout display when using inch unit.
  • Fix yellow border for selected grouped images.
  • Fix some tag export issues.
  • Fix crash on Windows when importing from a folder containing special characters.
  • Fix mouse-over thumbnail display when leaving the lighttable from the bottom - ensure that the thumbnail stops being highlighted.
  • Remove the double-click hint in the crop module for committing parameters. This functionality was removed in darktable 3.8.0.
  • Better layout for the star and rejected icons.
  • Fix some refresh issues on the guide overlays menu - ensure that the popup shows the current settings after they have been changed via a keyboard shortcut.
  • Fix guide lines in the rotate and perspective module - ensure the guides are displayed only within the cropped area.
  • Fix Piwigo export for new version of Piwigo which now uses a lounge for new images. We now flush it to ensure the images are assigned to their corresponding album.
  • Fix handling of circle/ellipse sources in the retouch module. Shapes can now be moved immediately after placing them via drag+drop.
  • Fix a bug in rotate and perspective that was preventing removal of the last manually drawn line.
  • Fix multiple issues in tagging module. Some UI interactions have been reworked to be closer to what a user would expect.
  • Also, some new keys have been added:
  • shift-enter attach selected tag, reset entry and give it the focus
  • shift-left collapse the entire tree
  • Fix multiple drag+drop issues on the lighttable that were causing crashes.
  • Fix a possible crash with very large up-scaling at export.
  • Rework the history items on thumbnail tooltips.
  • Rework the GUI for the copy / paste of history items. The on/off status icon has been removed from the labels and replaced with a specific "on/off" column.
  • Fix some demosaicer issues specific to AMD OpenCL drivers.
  • Fix possible crash in styles module for style names containing a slash.
  • Add option to enter the new module instance name automatically when duplicating a preset.
  • Fix Filmic RGB graph update when used in the quick access panel.
  • Restore shortcut for creating a virgin duplicate in the lighttable view.
  • Allow presets in the tagging module to append the tags instead of replacing them.
  • Fix tooltip on mid-tones vs extreme luminance saturation sliders in Filmic RGB.
  • Fix crop adjustment in rotate and perspective module when preview down-sampling is active. Movements were amplified making the adjustment harder and the clicked location was not constant when dragging the crop area.
  • Fix writing XMP metadata in AVIF format.
  • Fix importing from SMB shares mounted using gvfs.
  • Fix possible color shifting when activating lens correction on a monochrome image.
  • Fix $(RATING_ICONS) variable substitution - now displays an "X" when rating is 0 instead of an empty string.
  • Add some missing variable substitutions in the displayed list.
  • Fix reset button in metadata editor. The metadata entries were properly removed from the selected pictures but the module display was not refreshed.
  • Fix enabling processing modules from a shortcut. The module is no longer given focus when activated, matching the "click" behaviour.
  • Fix automatic tab selection when opening the preferences in non English languages.
  • Improve the unknown DNG illuminant handling.
  • Fix high quality export when the export size is specified "by scale".
  • Fix some shortcuts being ignored when applied to a widget in an inactive or unfocused popover dialog.
  • Changed Dependencies:
  • RawSpeed changes:
  • Camera support, compared to 3.8.0:
  • Base Support:
  • White Balance Presets:
  • Noise Profiles:
  • Canon EOS D60
  • Samsung NX1000
  • Custom Color Matrices:
  • Suspended Support:
  • No samples on raw.pixls.us:
  • Canon EOS M2
  • Creo/Leaf Aptus 22(LF3779)/Hasselblad H1
  • Fujifilm FinePix HS50EXR
  • Fujifilm FinePix S6000fd
  • Fujifilm FinePix S9600fd
  • Fujifilm IS-1
  • GoPro FUSION
  • Kodak EasyShare Z980
  • Leaf Aptus-II 5(LI300059)/Mamiya 645 AFD
  • Leaf Credo 60
  • Leaf Credo 80
  • Leica D-LUX 6
  • Minolta DiMAGE 5
  • Nikon 1 J4
  • Nikon 1 S1
  • Nikon Coolpix P7700
  • Nikon D1H
  • Nikon D2H
  • Nikon D3S
  • Olympus E-10
  • Olympus SP320
  • Olympus SP570UZ
  • Panasonic DMC-FX150
  • Panasonic DMC-G2
  • Pentax K200D
  • Pentax K2000
  • Pentax Q10
  • Phase One IQ250
  • Samsung GX10
  • Samsung GX20
  • Samsung NX5
  • Samsung NX10
  • Samsung NX11
  • Samsung NX20
  • Samsung NX2000
  • Samsung EK-GN120
  • Samsung SM-G920F
  • Samsung SM-G935F
  • Sinar Hy6/ Sinarback eXact
  • Sony DSLR-A380
  • Sony DSLR-A560
  • ST Micro STV680

New in darktable 3.8.1 (Feb 11, 2022)

  • The Big Ones:
  • Two new languages are now available for the documentation: Spanishand Dutch. This brings the total number of translations to six. Thanks to all the translators for their hard work.
  • Other New Features And Changes:
  • Speed up the retouch's heal tool by using better parallelism.
  • Add new variable $(DARKTABLE_VERSION).
  • Bug Fixes:
  • Fix control and feather points for path and brush shapes when editing using zoom > 200%. The editing is now smooth and no longer jumps as the mouse is moved.
  • On the lighttable view, fix Shift-click when selecting a range - at least one image must first be selected.
  • Fix expansion of some variables on Windows.
  • Fix SVG rendering by computing proper dimension in the watermark module with libsvg 2.52.
  • Fix printing when the export module is set to scale mode. This was caused by a bug in the interaction between export/print.
  • Fix print module image layout display when using inch unit.
  • Fix yellow border for selected grouped images.
  • Fix some tag export issues.
  • Fix crash on Windows when importing from a folder containing special characters.
  • Fix mouse-over thumbnail display when leaving the lighttable from the bottom - ensure that the thumbnail stops being highlighted.
  • Remove the double-click hint in the crop module for committing parameters. This functionality was removed in darktable 3.8.0.
  • Better layout for the star and rejected icons.
  • Fix some refresh issues on the guide overlays menu - ensure that the popup shows the current settings after they have been changed via a keyboard shortcut.
  • Fix guide lines in the rotate and perspective module - ensure the guides are displayed only within the cropped area.
  • Fix Piwigo export for new version of Piwigo which now uses a lounge for new images. We now flush it to ensure the images are assigned to their corresponding album.
  • Fix handling of circle/ellipse sources in the retouch module. Shapes can now be moved immediately after placing them via drag+drop.
  • Fix a bug in rotate and perspective that was preventing removal of the last manually drawn line.
  • Fix multiple issues in tagging module. Some UI interactions have been reworked to be closer to what a user would expect.
  • Also, some new keys have been added:
  • shift-enter attach selected tag, reset entry and give it the focus
  • shift-left collapse the entire tree
  • Fix multiple drag+drop issues on the lighttable that were causing crashes.
  • Fix a possible crash with very large up-scaling at export.
  • Rework the history items on thumbnail tooltips.
  • Rework the GUI for the copy / paste of history items. The on/off status icon has been removed from the labels and replaced with a specific "on/off" column.
  • Fix some demosaicer issues specific to AMD OpenCL drivers.
  • Fix possible crash in styles module for style names containing a slash.
  • Add option to enter the new module instance name automatically when duplicating a preset.
  • Fix Filmic RGB graph update when used in the quick access panel.
  • Restore shortcut for creating a virgin duplicate in the lighttable view.
  • Allow presets in the tagging module to append the tags instead of replacing them.
  • Fix tooltip on mid-tones vs extreme luminance saturation sliders in Filmic RGB.
  • Fix crop adjustment in rotate and perspective module when preview down-sampling is active. Movements were amplified making the adjustment harder and the clicked location was not constant when dragging the crop area.
  • Fix writing XMP metadata in AVIF format.
  • Fix importing from SMB shares mounted using gvfs.
  • Fix possible color shifting when activating lens correction on a monochrome image.
  • Fix $(RATING_ICONS) variable substitution - now displays an "X" when rating is 0 instead of an empty string.
  • Add some missing variable substitutions in the displayed list.
  • Fix reset button in metadata editor. The metadata entries were properly removed from the selected pictures but the module display was not refreshed.
  • Fix enabling processing modules from a shortcut. The module is no longer given focus when activated, matching the "click" behaviour.
  • Fix automatic tab selection when opening the preferences in non English languages.
  • Improve the unknown DNG illuminant handling.
  • Fix high quality export when the export size is specified "by scale".
  • Fix some shortcuts being ignored when applied to a widget in an inactive or unfocused popover dialog.

New in darktable 3.8.0 (Dec 24, 2021)

  • The Big Ones:
  • The keyboard shortcut system has been entirely reworked and extended to allow you to control darktable with other devices, for example, MIDI devices and game controllers. Standard keyboard/mouse shortcuts can now make use of mouse movements (horizontal, vertical, diagonal) as well as multiple button/key presses and short or long presses/clicks.
  • Please note that any shortcuts you have previously created are not transferred to the new functionality and will need to be redefined in darktable 3.8.
  • New diffuse or sharpen module, allowing you to simulate or to revert diffusion processes to reconstruct images from lens blur, hazing, sensor low-pass filter, or noise. It can also be used to simulate watercolor smudges, increase local contrast, simulate blooming or apply surface blur. Special rules can be defined to specifically diffuse across or along edges, as well as to avoid sharpening or blurring them.
  • New scene-referred blurs module, to synthesize motion and lens blurs in a parametric and physically-accurate way. This module allows you to define the motion path or the lens diaphragm and then generates the corresponding blur.
  • Perspective correction module has been renamed to rotate and perspective and now allows you to manually define correction settings by drawing lines or rectangles on the image (replicating keystone correction functionality from the deprecated crop and rotate module)
  • Added support for multiple images in the print view. The page can be filled with multiple areas, each of which can be moved around and placed on the page with the ability to snap to a grid for precision.
  • A new LMMSE demosaic algorithm has been introduced. This algorithm is particularly suited to high ISO and/or noisy images.
  • The composition guides from the crop module are now available globally and no longer require the crop module to be activated.
  • The Canon raw CR3 format is now supported (see list of supported cameras in the section below). This support is provided by LibRaw and requires at least exiv2 version 0.27.4 with BMFF support activated.
  • The color checker profiling tool, introduced in darktable 3.4 as part of the color calibration module, is now normalized patch-wise in exposure to discard the effect of uneven lighting and fall-off when shooting color checkers hand-held and on-location. This robustly decreases the residual average dE after calibration and noticeably helps to recover natural dark blues while preventing yellow shifts in highlights.
  • Other New Features And Changes:
  • The denoise (profiled) module now uses wavelets mode by default and its default settings in Y0U0V0 mode have been improved.
  • Flip buttons have been added to the orientation module (functionality moved from crop and rotate).
  • Background jobs handling has been removed from preferences.
  • Much of the SSE-specific code has been removed, since compiler-generated code is usually faster.
  • The darktable-generate-cache script now displays filenames and image IDs.
  • File name matches in the collections module are now faster.
  • Mask handling is faster.
  • Processing module order can now be automatically applied based on image properties.
  • Folder status is properly refreshed when a mount is changed.
  • An area color picker is selectable by using a Right-Click in addition to the existing Ctrl+click action.
  • Substitution variables have been added for image dimensions as follows: $(SENSOR_HEIGHT) and $(SENSOR_WIDTH) for the absolute pixel dimensions of the sensor; $(MAX_HEIGHT) and $(MAX_WIDTH) for the raw image size; and $(EXPORT_HEIGHT) and $(EXPORT_WIDTH) for the post-cropping final image size.
  • More work on code speed-up in many different routines ensuring better vectorization and/or OpenMP definition. Notably, the split-toning, haze removal and soften modules have been improved.
  • The "beginner" module group preset now takes the chosen workflow (display or scene referred) into account.
  • The quick access panel now takes the chosen workflow (display or scene referred) into account.
  • New sorting options based on capture, import, modification, last export and last print times.
  • Tooltip for raster mask now includes source module information.
  • Timezone entry has been improved in the geotagging module.
  • A new preference has been added to choose the number of recent collections to display.
  • Rating support has been added to the collections module making it possible to create presets, for example, to select the best images of 2021.
  • PNG files are now supported in the watermark module.
  • The values in the global color picker module are now selectable and can be copied to the clipboard.
  • HSV has been added as an option in the global color picker module.
  • The color scheme of the timeline is improved.
  • The scopes module (previously named histogram) can now be moved to the left panel.
  • Improved color rendering for waveform and parade scopes.
  • A new vertical waveform scope option has been added.
  • Live samples can now be displayed in the vectorscope.
  • An RYB option has been added to the vectorscope.
  • The lut3d module has been moved after filmic in the pixelpipe.
  • Minor usability improvements have been made to the tone equalizer, ensuring that the cursor is shown on focus and the module is activated on scroll.
  • The automatic mask tuning has been improved in the tone equalizer module.
  • New "magic wand" icons are now used for the auto-tune actions in the tone equalizer module.
  • Tiling has been enabled in the color balance rgb, diffuse and filmic rgb modules to allow very large images to be processed.
  • When scanning for updated XMP files, the synchronization window has been improved to offer more choices as to how the database/XMP files should be updated.
  • Added read support for HEIF/HEIC file format.
  • Added support for ARM64/Apple M1 as a build target.
  • Added a preference to invert the behavior of mouse scroll up/down on drawn mask attributes. At the same time, and for consistency, the scroll-up action has been set to increase all mask attributes by default.
  • Added timestamp in camera import dialog for consistency with the other import dialog.
  • The current module order is now shown in the module order module header to save space in the GUI.
  • The "module order" entry is now moved to the end of the copy/paste dialog for better usability, as this option is rarely used.
  • The split toning module now displays the hue in degrees for consistency with other modules.
  • Rejected images in the lighttable view are now dimmed for clarity.
  • The last selected Piwigo album is now remembered in the export module.
  • For advanced users and developers, OpenCL build options are now exposed in darktablerc.
  • The collections module now offers some new presets based on image time to complement the existing presets based on the import time.
  • Add a borderless requirement indicator in the print module when the user's selected margins are below the hardware margins.
  • Add an option to show all modules in the history within the active module group regardeless of whether or not they are currently enabled.
  • Add a search box in preset preferences and shortcuts.
  • Improved curve handling in filmic. Curve should be easier to control, as some side-effects of some parameters on others have been eliminated.
  • Add thumbnail preview support for DNG files in import dialog.
  • The darktable 3.8.0 documentation now includes four (French, German, Ukranian, Brazilian Portuguese) translated languages (the first time complete, translated documentation has been made available on the release date), fully integrated into darktable's help link system. Translated versions of the epub and pdf manuals are also available.
  • The following modules have been deprecated:
  • Crop and rotate - the features of this module are now shared between the crop,
  • orientation, and rotate and perspective modules.
  • Note that the new crop module is now placed after the retouch module
  • to ensure that the full image can be used as a source area.
  • A new option has been added to allow you to choose when to start writing changes to the XMP sidecar files. Choose to:
  • (a) never write XMP;
  • (b) write XMP as soon as the image is imported; or
  • (c) write XMP only after the user has edited the image in the darkroom view.
  • Bug Fixes:
  • Multiple memory leaks have been fixed.
  • Fixed green equilibration in RCD CPU code path.
  • Select the best illuminant for DNG images.
  • When trying to enter a view that cannot be used (like the tethering view where no camera is attached), make sure to reset the combobox back to the previous view.
  • Fix calibration optimizations for delta E in the color calibration module.
  • Fix focus peaking, which was in some cases displaying some random wrong pixels on the borders.
  • Fix refresh when pasting the whole or part of history.
  • Fix possible uninitialized-data access in RCD demosaic.
  • Update metadata fields when applying a preset.
  • Fix creation of liquify interpolated path to be closer to what the user would expect.
  • Multiple Windows PATH-specific issues have been fixed. Also, UNC path-names are now supported.
  • Make sure RAW+Jpeg files keep the same filename during copy & import.
  • Add some consistency to the drawn shape opacity increase/decrease, which was working in the opposite way to the other mask controls.
  • Invert liquify strength vector rotation for consistency.
  • Make metadata and tagging consistent regarding the current selection.
  • Fix some rounding errors in masks with sharp corners, which were creating discontinuities in the mask area.
  • Fix the image loader flag, which was not properly set at import time.
  • Fix possible wrong setting in Color Calibration when switching from Jpeg to RAW files.
  • Fix a rare but possible wrong White Balance just after importing a picture or while resetting the development history.
  • Lua:
  • Moved from Lua 5.3 to Lua 5.4.
  • Lua API is now 8.0.0.
  • Added darktable.print_toast() and darktable.print_hinter() functions to print toast and hinter messages respectively.
  • Added is_altered() field to dt_lua_image data type to determine if an image has been altered since being imported.
  • Added generate_cache() function to the dt_lua_image data type so that a mipmap cache image can be generated without having to run darktable-generate-cache.
  • Added function darktable.gui.libs.snapshots.clear_snapshots() to delete any snapshots.
  • Added event darkroom-image-loaded that is triggered when an image is loaded into darkroom view. The image is returned.
  • Added event darkroom-image-history-changed that is triggered when an image history is changed in darkroom view. The image is returned.
  • Notes:
  • The 3.8.x series of darktable releases will be the last that supports macOS 10.7 and building with Xcode 11.
  • The next major release will require at least macOS 10.14 to run and Xcode 12 to build.
  • The modules deprecated in 3.4 have now been removed from the deprecated module group. The modules affected are: Zone System, Invert, Channel Mixer, Global Tonemap, Relight, Tonemap, Vibrance and Basic Adjustments.
  • Changed Dependencies:
  • Move from Lua 5.3 to 5.4.
  • RawSpeed changes:
  • Camera support, compared to 3.6:
  • Base Support:
  • Canon EOS R
  • Canon EOS RP
  • Canon EOS R5
  • Canon EOS R6
  • Canon EOS 250D
  • Canon EOS 850D
  • Canon EOS 90D
  • Canon EOS 1D X Mark III
  • Canon EOS M6 Mark II
  • Canon EOS M50
  • Canon EOS M50 Mark II
  • Canon EOS M200
  • Canon PowerShot G5 X Mark II
  • Canon PowerShot G7 X Mark III
  • Fujifilm GFX50S II (compressed)
  • Leica C (Typ 112) (3:2)
  • Leica Digilux 3 (4:3)
  • Leica M10 (dng)
  • Ricoh GR II
  • Sony DSC-HX95
  • Sony ILCE-7M4
  • Sony ZV-E10
  • White Balance Presets:
  • Canon EOS R (with fine-tuning)
  • Canon EOS RP (with fine-tuning)
  • Canon EOS R5 (with fine-tuning)
  • Canon EOS R6
  • Canon EOS M50 (with fine-tuning)
  • Ricoh GR II
  • Noise Profiles:
  • Canon EOS R
  • Canon EOS RP
  • Canon EOS R5
  • Canon EOS R6
  • Fujifilm X100V
  • Leica D-Lux 7
  • Leica M10
  • Leica SL (Typ 601)
  • Panasonic DC-S5
  • Panasonic DC-FZ91
  • Panasonic DC-FZ92
  • Panasonic DC-FZ93
  • Panasonic DC-TZ90
  • Panasonic DC-TZ91
  • Panasonic DC-ZS70
  • Custom Color Matrices:
  • Suspended Support:
  • No samples on raw.pixls.us:
  • Canon EOS M2
  • Creo/Leaf Aptus 22(LF3779)/Hasselblad H1
  • Fujifilm FinePix HS50EXR
  • Fujifilm FinePix S6000fd
  • Fujifilm FinePix S9600fd
  • Fujifilm IS-1
  • GoPro FUSION
  • Kodak EasyShare Z980
  • Leaf Aptus-II 5(LI300059)/Mamiya 645 AFD
  • Leaf Credo 60
  • Leaf Credo 80
  • Leica D-LUX 6
  • Minolta DiMAGE 5
  • Nikon 1 J4
  • Nikon 1 S1
  • Nikon Coolpix P7700
  • Nikon D1H
  • Nikon D2H
  • Nikon D3S
  • Olympus E-10
  • Olympus SP320
  • Olympus SP570UZ
  • Panasonic DMC-FX150
  • Panasonic DMC-G2
  • Pentax K200D
  • Pentax K2000
  • Pentax Q10
  • Phase One IQ250
  • Samsung GX10
  • Samsung GX20
  • Samsung NX5
  • Samsung NX10
  • Samsung NX11
  • Samsung NX20
  • Samsung NX2000
  • Samsung EK-GN120
  • Samsung SM-G920F
  • Samsung SM-G935F
  • Sinar Hy6/ Sinarback eXact
  • Sony DSLR-A380
  • Sony DSLR-A560
  • ST Micro STV680
  • Translations:
  • German
  • Esperanto
  • European Spanish
  • Finnish
  • French
  • Hebrew
  • Hungarian
  • Italian
  • Japanese
  • Polish
  • Brazilian Portuguese
  • Slovenian
  • Ukrainian
  • Chinese - China

New in darktable 3.6.1 (Sep 15, 2021)

  • Bug Fixes:
  • Fix module expand on quick access panel when enabling/disabling module.
  • Fix a possible crash in color calibration module.
  • Fix an inconsistency between the CPU & GPU path in color calibration module.
  • Fix possible issue in OpenCL Bradford non-linear code in color
  • calibration which leads to wrong color rendering.
  • Fix Windows paths handling and encoding.
  • Fix possible issue in exiv2 when trying to write empty strings.
  • Fix by-scale button in export module.
  • Fix crash when renaming a drawn mask.
  • Minor UI fix in duplicate module.
  • Fix possible wrong rendering of the color picker
  • tooltip. (workaround for a possible Gtk issue).
  • Fix filename variable used when importing new pictures.
  • Fix noise profile for RICOH GR III.
  • Fix some memory leaks.
  • Camera support, compared to 3.6:
  • Base Support:
  • Leica C-Lux (3:2)
  • Nikon D6 (14bit-compressed, 14bit-uncompressed, 12bit-compressed, 12bit-uncompressed)
  • Nikon Z fc (14bit-compressed, 12bit-compressed)
  • Sony ILCE-7RM3A
  • Sony ILCE-7RM4A
  • Noise Profiles:
  • Ricoh GR III

New in darktable 3.6.0 (Jul 3, 2021)

  • The Big Ones:
  • Full rework of the import module. The new module allows you to see thumbnails of your images before import and makes it easier to handle multiple import tasks. The same dialog is now used for importing from disk, card or camera.
  • When importing "in-place", images that are already present in darktable are flagged and can be automatically excluded from the import.
  • Importing from a local drive won't use gphoto and so should work more reliably on Windows.
  • A vector-scope is added to complement the current histogram, waveform and parade views.
  • A new default demosaic algorithm (RCD) has been introduced, which should provide better quality than the current default (PPG) without the long run-times of AMaZE. the order of the demosaic algorithms has also been adjusted for clarity.
  • Support for "dual demosaic" has also been added, allowing you to combine "RCD + VNG4" and "AMaZE + VNG4" for bayer sensors, for xtrans sensors there is "Markesteijn 3-pass + VNG". This allows you to use an algorithm better resolving fine detail and another one delivering smoother output depending on local image content.
  • You can now create an opacity mask based on the sharpness of the image. This uses a similar algorithm to that used in dual demosaic.
  • Drawn shapes are drawn on the original RAW image and then distorted through the pixelpipe. This previously led to, for example, circles becoming ellipses (due to lens distortion) after being placed on the image. All drawn shapes can now be pre-visualized and moved prior to placement, with full deformation applied. This makes the editing of masks easier fully WYSIWYG.
  • A new Color Balance RGB module has been added. This can be used as a one stop module for all color grading work.
  • A new censorize module has been added. This allows you to hide parts of the image by adding a blur/pixelization.
  • A new crop module has been added. This new module has been added late in the pixelpipe and makes it possible to use cropped parts of the image for source spots in the retouch module, for example.
  • A new section has been added to the color calibration module to allow you to calibrate colors using a color checker chart.
  • The map module has been enhanced in a number of ways:
  • When importing a GPX the trace can be displayed.
  • Location can be set using polygons and directly created from information reported by Open Street Map. As a reminder, all locations create tags automatically for images placed into the area.
  • The basic adjustments module has been replaced with the quick access panel, which can be used to group controls from multiple different modules in one place. Currently, only non-graphical controls (sliders, comboboxes etc.) can be used.
  • Other New Features And Changes:
  • The various lighttable modes can now be accessed via clear and descriptive icons at the bottom of the screen. These should be easier to use than the existing drop-down selection.
  • The export module is now also accessible on the left-hand panel of the darkroom view.
  • The mix control in the contrast equalizer module is now retained as module parameter. This means that no data is lost when using this slider and you can always change the mix later with full precision.
  • The following modules have been deprecated:
  • The basic adjustments module has been replaced by the new quick access panel.
  • The vibrance module has been replaced by the vibrance control in the new color balance rgb module.
  • The spot removal module has been replaced by the retouch module (use this module in "clone" mode to replicate the spot removal functionality)
  • The defringe module has been replaced by a new "chromatic aberrations" module.
  • The old module has been renamed to "raw chromatic aberrations".
  • The RAW chromatic aberration module has been enhanced to support multiple iterations and an option to help avoid color shifting has been added (not activated by default).
  • Scene-referred workflow is now the default, though this can still be changed in preferences.
  • The ESC key can be used to exit the slideshow view.
  • You can now Ctrl-Click on the module groups preset button to access the manage dialog directly.
  • Many aspects of the GUI have been reworked or tweaked for a better user experience (combo-box alignment, padding, histogram icons, etc.).
  • The color of scope views (histogram, parade, waveform) has been reworked using CSS.
  • The integrated help system now points to the new user manual which is up-to-date for this release. Also for development builds of darktable these links will go to the development version of the manual. So more links have been added, for example, for the lighttable layout and the timeline.
  • As a reminder, the new documentation is available in the following location (viewable online or in pdf and epub formats):
  • https://www.darktable.org/usermanual/3.6/en/
  • Many graphs in processing modules can now be resized with Ctrl+Scroll. (Filmic RGB, RGB levels, levels, lowlight, colorzones, rawdenoise, denoise profile, contrast equalizer).
  • A new color preservation method ("norm-preserving colorfulness") has been added to the color calibration module.
  • A simplified and more precise message has been added to notify the user when their database(s) are locked by another process.
  • A rational function has been added to toe/shoulder controls in Filmic RGB.
  • A new preference for advanced users can now be used to disable the module warning messages. Use at your own risk.
  • Preliminary work toward full support for CR3 has begun. darktable's exif support can now read CR3 files if the proper exiv2 library version is found.
  • A new color science with norm preservation under de-saturation has been added to Filmic RGB and a new scaled euclidean norm is supported.
  • Some changes have been made to make liquify faster when editing nodes. Also smaller deformation stamps are now supported.
  • The style of module sub-sections has been tweaked so that they stand out more.
  • It is now possible to more easily manage overlapping masks. For example, it is possible to change an ellipse's control points when they lie within a larger circle or path shape.
  • Easier handling of the mask controls - do not require high precision as mouse collision detection has been reworked.
  • The preferences, "manage module groups" and import dialogs will remember and restore their size after closing. Their default size is designed to support smaller screens and it is recommended that you resize them as appropriate.
  • A huge number of internal optimizations have been made throughout the code. For example: soften, tone equalizer, drawn masks, color picker, color space conversions. It is impossible to list them all
  • Many speed improvements have been made for the standard CPU code path by tuning the OpenMP code. There are some huge gains with the new code in some modules. We have then removed some hand-coded SSE routines as they are not faster and are hard to maintain.
  • The prompt that appears when exporting in overwrite mode is now optional and controlled by a security preference.
  • An icon has now been added to module headers to indicate whether a module uses a mask. This allows you to quickly see which modules use a mask and to enable/disable the mask preview by clicking on it.
  • A message is now shown when a camera is plugged and darktable is not able to connect to it. The general cause is that the camera is mounted by the OS and so is exclusively locked.
  • The grey darkroom loading screen is now optional. This can lead to on-screen artifacts but can also be useful to quickly compare versions of an image.
  • Module group presets can now be auto-applied based on the image being edited.This make it possible to create groups specifically to develop color, monochrome, RAW or Jpeg images, for example.
  • Different interpolation algorithms are advised for warping and scaling modules. A new preference has been added to allow you to select these algorithms independently.
  • RGB scene blending mode is now used for the denoise (profiled) presets.
  • Parametric masks are now handled better when being reset. Some parametric masks may need to be inverted in order to be considered as a no-operation.
  • The GUI of the blending section has been rewored to be more compact.
  • Distortion is no longer computed for shapes that are outside of the current view.
  • Better values are reported on toast messages when changing masks' size and feather.
  • Undo has been enhanced to support duplicates. That is, the creation of duplicates can be undone using Ctrl+Z (undo).
  • In the darkroom, undo now restores the mask display status along with the module changes.
  • Non-matrix-based color profiles have been filtered out of the histogram profile menu.
  • The timeline/filmstrip keyboard shortcut has been changed to Ctrl-B. This is more consistent with Ctrl+Shift+B (used to toggle the bottom panel) and avoids a conflict with sticky preview shortcut.
  • Some preferences have been moved to a sub-menu in the module preset menu. This makes the global preferences lighter. This has been done for the import, export, metadata and "collect images" modules.
  • Jpeg-2000 files are now decoded faster (using multiple threads).
  • The lighttable has been enhanced to use the embedded Jpeg preview depending on the size of the thumbnails being displayed. Setting such a preference to use embedded preview for small thumbnails may speed-up the handling of large collections during import, for example.
  • Added support for removing multiple styles at once.
  • Added support for import/export of presets on mass.
  • Added collect filter presets to display images based on aspect ratio and import date.
  • The variables $(EXIF_xxx) can now be used while importing pictures.
  • Graduated density module's control is fixed when using down-sampling.
  • Color zone saturation has been adjusted to avoid misleading visual illusions.
  • Modules can now be removed from a group by right-clicking on the group icon.
  • Many improvements have been made to the TIFF export module.
  • In the lighttable, when several images are selected, the image information module now displays the information only if every image share the same data. If data are different, a text is displayed.
  • In the export module, the last visited Piwigo album is now remembered between sessions.
  • Bug Fixes:
  • Fix ellipse and gradient rotation angle when distortion modules are activated. This is a GUI issue only when adding and editing shapes.
  • Fix white-balance from old edits where the white-balance module was left at default values in darktable 2.6.x. For those edits we need to recover the legacy values and not the new ones from 3.x.
  • Use smooth zooming to avoid thumbnails flickering.
  • Fix entering of exponent expression in sliders for keyboard where ^ is a dead key (this is the case in the German and French layout for example).
  • The import should be a bit faster for large collections by limiting the GUI update.
  • Fix various AVIF issues (set YUV range, proper use of color primaries, set codecName, etc.)
  • Fix demosaic border handling and have fewer differences between the CPU & GPU code path.
  • Fix use of sources in spot and retouch when distortion is used. The source area was not always correctly distorted and was actually giving different results depending on whether distorting modules were present in the pipe.
  • In the default watermark simple-text we now preserve the spaces.
  • Properly check for CLUT in all ICC intents before extracting matrix.
  • Properly use the inverse-transform routine provided by lensfun instead of an adhoc iterative routine in the lens correction module. This makes the code cleaner and probably more precise.
  • Hide borders by default in slideshow view.
  • Ensure that duplicates are given the same time-stamp as the source image.
  • Fix creation of duplicates when the workflow default has been changed since the base image was created. That is, an image
  • created with the display-referred workflow must be fully identical when duplicated, even if the workflow default has been changed to scene-referred.
  • Properly group focal lengths in the collect images filters.
  • Better naming of the RAW prepare module controls.
  • Fix live-view display scaling on large screens (especially for HiDPI ones).
  • Fix migration of legacy parameters for denoise (profiled). A copy/paste error was copying the shadow parameter as the new bias.
  • Fix possible loss of masks where a module is disabled just before switching to another module.
  • A new module instance can now be created by right-clicking on the multi-instance menu or on a preset. This replaces middle-click, which is not available on all mice.
  • Fix zoom in the lighttable full preview to keep the mouse position.
  • Recover forms from legacy spot in version 1.
  • Fix reset in the export module so that it resets all module parameters to their default values.
  • Fix HDR DNG white balance setting.
  • Import Lightroom metadata only if there is not already a darktable XMP for the corresponding image.
  • Fix color profile handling in the overexposed module.
  • Fix style undo in overwrite mode.
  • Fix possible issue with CUPS printer margins computation when computer is not using the English locale.
  • Notes:
  • The database upgrade can be slow.
  • This new version modifies quite a lot the database structure by adding foreign keys and cascade support. This will avoid dangling data in the database and will enforce a better consistency.
  • Lua:
  • API changed to 6.2.0
  • Password storage and retrieval - added darktable.password.save() and darktable.password.get() to save and retrieve passwords using the darktable password storage back end.
  • Widget naming - widgets now have a name field, making it possible to style them using CSS
  • darktable.gui.libs.visibility is fixed so that setting a lib to hidden (false) removes it from the user interface.
  • Preferences - added darktable.preferences.destroy() to remove a preference. Added darktable.preferences.get_keys() to return a sorted table of all of the preferences for both darktable and lua.
  • Get image from database by image id - added darktable.database.get_image() to retrieve an image by the image ID
  • darktable.gui.libs.metadata_view.destroy_info() - function added to remove field added by darktable.gui.libs.metadata_view.register_info() from the image information display. Thanks @phweyland
  • API change to 6.2.1 - SCRIPT BREAKING CHANGE
  • Event naming - add a name field to darktable.register_event() so that multiple events of the same type can differentiated and the desired one selected and accessed.
  • Event destruction - added darktable.destroy_event() to remove an event.
  • API change to 6.2.2 - SCRIPT BREAKING CHANGE
  • Add selection-changed to the lua events so that scripts can respond when the selection changes
  • Selection naming - add a name field to darktable.gui.libs.select.register_selection() so that the selection can be selected and manipulated after creation
  • Selection destruction - add darktable.gui.libs.select.destroy_selection() to remove an selection button from the user interface.
  • Selection sensitivity - add darktable.gui.libs.select.set_selection_sensitive() to set selection button sensitivity
  • API change to 6.2.3 - SCRIPT BREAKING CHANGE
  • Action naming - add a name field to darktable.gui.libs.image.register_action() so that the action can be selected and manipulated after creation
  • Action destruction - add darktable.gui.libs.image.destroy_action() to remove a lua created action button from the user interface.
  • Action sensitivity - add darktable.gui.libs.image.set_action_sensitive() to set action button sensitivity
  • Bugfix - Changed text_view widget to wrap lines when the text exceeds the width of the widget
  • Storage removal - add darktable.destroy_storage() to remove a storage from the exporter
  • Widget visibility - add visible member to widgets for visibility control
  • Change API to 7.0.0 for darktable 3.6.0 due to all of the breaking changes this development cycle
  • Changed Dependencies:
  • RawSpeed changes:
  • Camera support, compared to 3.4.1:
  • Base Support:
  • Fujifilm GFX100S (compressed)
  • Fujifilm X-E4 (compressed)
  • Fujifilm X-S10 (compressed)
  • Leica D-Lux 7 (4:3, 1:1, 16:9, 3:2)
  • Nikon Z 6_2 (14bit-compressed, 14bit-uncompressed, 12bit-compressed, 12bit-uncompressed)
  • Nikon Z 7_2 (14bit-compressed, 14bit-uncompressed, 12bit-compressed, 12bit-uncompressed)
  • Panasonic DC-G100 (4:3)
  • Panasonic DC-G110 (4:3)
  • Panasonic DC-GF10 (4:3)
  • Panasonic GF90 (4:3)
  • Pentax K-3 Mark III
  • Ricoh GR III (dng)
  • Sony ILCE-1
  • Sony ILCE-7SM3
  • Sony ILCE-QX1
  • White Balance Presets:
  • Fujifilm GFX100S
  • Fujifilm X-E4
  • Nikon D780
  • Panasonic DC-FZ10002
  • Panasonic DMC-G8
  • Panasonic DMC-G80
  • Panasonic DMC-G81
  • Panasonic DMC-G85
  • Ricoh GR III
  • Samsung GX20
  • Noise Profiles:
  • Canon PowerShot S110
  • Nikon COOLPIX P950
  • Nikon Z 7_2
  • Olympus E-M10 Mark IV
  • Pentax K-3 Mark III
  • Samsung GX10
  • Samsung GX20
  • Sony ILCE-1
  • Sony ILCE-7C
  • Custom Color matrices:
  • Samsung GX20
  • Translations:
  • Afrikaans
  • German
  • Esperanto
  • European Spanish
  • French
  • Hebrew
  • Hungarian
  • Italian
  • Dutch
  • Brazilian Portuguese
  • Russian
  • Slovenian
  • Ukrainian

New in darktable 3.4.1.1 (Apr 3, 2021)

  • Windows hot fix

New in darktable 3.4.1 (Feb 8, 2021)

  • New Features And Changes:
  • Faster thumbnail generation during import.
  • Some minor CSS improvements.
  • Bug fixes:
  • Fix color correction RGB handling and saturation normalization.
  • Fix smooth scrolling on MacOS.
  • Fix Lr metadata import, this is done only if no other XMP present.
  • Fix metadata export which must be done only if the corresponding setting is activated.
  • Fix combo-box popup scrolling.
  • Properly restore collection hinter messages when needed.
  • Fix stars display in overlay.
  • Fix black point setting when dragging the histogram.
  • Fix help links for technical group module.
  • Properly discriminate cameras with the same prefix in collect module.
  • Fix bold rendering on Windows (for selected presets for example).
  • Fix support of Windows PATH to configuration and libraries when the path name contains non ASCII characters.
  • Properly hide the selected tag tick when a tag is not selected anymore.
  • Fix search on collect module for multiple filename separated with coma.
  • Fix size of clipping handle when preview down-sampling is activated.
  • Fix metadata comment reading from exif.
  • Fix a case where the thumbnail could be out of synchronization with the darkroom edit.
  • Never show filmstrip cursor on selected image on other views.
  • Skip possible null dates on the collect module which could then crash darktable.
  • Fix waveform histogram rendering on MacOS.
  • Fix some memory leaks.

New in darktable 3.4.0 (Dec 24, 2020)

  • New Features And Changes:
  • Some parts of the GUI have been reworked in this version to complete the overhaul done in previous 3.2 release to ensure seamless integration (color, spacing). A good example is the combo-boxes.
  • A focus-peaking button has been added in the lighttable and darkroom views which complements the existing keyboard shortcut. Focus-peaking helps to visualize the depth of field in an image by materializing the sharp edges.
  • Better visual feedback is provided when changing module order with drag&drop.
  • The wavelet algorithm has improved performance.
  • A new tooltip has been added to items in the darkroom history stack module showing a list of the individual parameter changes at each step. This can especially help to track down unintended adjustments in modules with many tabs, such as filmic rgb or the parametric blending settings. This feature was based on the under-the-hood introspection enhancements delivered in 3.2.
  • Processing modules now have a new tooltip, accessible by hovering over their header, containing a summary of what they do, how they work, in which color space they operate, if they expect linear, non-linear, display-referred, or scene-referred input and what kind of output they produce. This will help users to build consistent pipelines when reordering modules, by exposing the assumptions upon which each module is built, and provides an in-app documentation summary accessible offline.
  • Processing modules have been updated with alias names and keyword lists which are used in the module group search. As a result, a module search can be performed using the exact names, synonyms (e.g. "dehaze" for "haze removal") or features. For example searching for "saturation" will return all modules that can perform saturation adjustments.
  • Importing pictures from memory cards no longer uses the gPhoto API. This should now be more stable on Windows.
  • Many changes have been made to modules to allow for narrower panels.
  • The bilateral filter (used in local contrast, for example) has been enhanced for better performance.
  • The reset button in the history module can now be used to delete the history stack.
  • Ctrl+Clicking on the 'compress history stack' will truncate the history without compressing it.
  • The export module has new options to specify the maximum output pixel dimensions using a scale factor or print size (cm or inch) and DPI.
  • The Filmic RGB module has new graph views to help first time users.
  • These views include a default base curve view in linear and logarithmic scales, consistent with the base curve module, and a zone-system view which shows the dynamic range mapping between scene and display grey scales. All the views have optional legends, which can be toggled on for new users, and off for experienced users seeking more GUI real-estate.
  • Changing the pixel workflow preference (none, display-referred, scene-referred) no longer requires a restart.
  • The pixel-pipe cache can be fine-tuned for better performance.
  • The white balance module can now show colored sliders with two available modes: 'illuminant color' or 'effect emulation'.
  • More compact combo-box displays have been added to some modules.
  • In the collect module, the collection properties drop-down is now grouped making it easier to find the property you wish to filter on.
  • Read support for 16-bit (half) float TIFFs has been added.
  • The channel mixer has been deprecated (now replaced with the new color calibration module)
  • The global color picker has been reworked and now comes with an enhanced GUI. The colors can now be displayed in LCh or HSL.
  • Any user-amended preferences (those which differ from their default values) are now indicated with a small bullet.
  • A new preference has been added to allow you to hide built-in presets.
  • All modules with a list (styles, image information etc.) can be resized with a Ctrl+Scroll action.
  • The history copy has been changed to include only safe modules. Modules like "raw white/black point" and "scale pixels" are no longer copied, for example. To copy such modules, use the "copy parts..." button. Note that the unsafe modules are not selected by default in the resulting dialog.
  • A new exposure independent guided filter has been introduced in the tone equalizer module. This solves the algorithmic drawback of the regular guided filter (edge-aware surface blurring), that tends to over-smooth low-lights and under-smooth highlights. These filters are used by the tone equalizer to apply contrast compression globally on the image while not reducing the percieved acutance for local details.
  • Greyscale support has been added for the AVIF format.
  • The "screen DPI overwrite" and "speed/quality trade-off for drawing images" preferences have been combined into a single new performance mode for slow computers. In this mode the thumbs are computed with a lower DPI and use a faster drawing algorithm.
  • All values in the saved preferences are checked to detect possible data corruptions. Preferences having a min or max are validated to ensure that they are in the appropriate range. Any preferences detected with possible data corruption are automatically reset to their default values.
  • Support for AVIF >= 0.8.2 (no support for older versions).
  • In order to guard against overwriting styles when exporting them, a dialog is shown to allow the user to confirm or abort the action.
  • Output channel sliders for parametric masking are now hidden by default.
  • The over-exposure warning display has been improved. As of darktable 3.2.1, it showed pixels for which any RGB channel value was below 0.1% or above 98%, assuming they would clip in the final export, which is wrong. This mode triggered a lot of false-positives that needlessly alarmed users who took them very seriously, but also showed over-saturation and over-exposure issues altogether. This comes with 4 possible modes:
  • "any RGB channel" is the same as the previous "over exposure" warning.
  • "luminance only" shows by default pixels darker than -12.67 EV (sRGB black point in 8 bits integers encoding) or brighter than 99%
  • "saturation only" shows any pixel which is too saturated for its current luminance, meaning it is out of gamut.
  • "full gamut" shows a combination of the 3 previous modes for an overall control check.
  • These modes allow the user to take appropriate measures: exposure adjustments to fix luminance clipping or saturation adjustments to fix gamut clipping.
  • A new preset has been added to the denoise (profiled) module to remove only chrominance noise using wavelets mode.
  • Many modules have been reworked to get better performance on CPU by reordering and improving the OpenMP code. The modules are Liquify, Shadows and Highlights, Filmic RGB reconstruction, RAW Denoise, Borders, High Pass.
  • The histogram has been improved for performance espcecially the log view.
  • Bug fixes:
  • Fix orientation in the clipping module after having selected the freehand aspect ratio.
  • Fix compilation issue with AVIF format support.
  • Fix multiple small memory leaks.
  • Fix daylight saving time in $(EXIF_HOUR) variable.
  • Fix timestamp display on Windows (use UTF-8 format for timestamps).
  • Fix many issues on the zoomable lighttable view introduced in 3.2 with the lighttable rewrite.
  • Fix possible flickering while displaying thumbnails on the lighttable.
  • Fix liquify module interaction with nodes, line and curves when zooming and/or down-sampling is activated.
  • Fix some issues with lighttable display (thumbnails) when using HiDPI monitor.
  • Fix styles undo/redo in the darkroom.
  • Notes:
  • The code base has been significantly simplified and refactored, which will make future code maintenance easier.
  • Many more tests have been added to track regressions in image filter outputs and ensure backwards compatibility of edits. The testsuite counts now 77 tests and covers all the modules currently supported.
  • Lua:
  • API changed to 6.1.0
  • Button labels can now be ellipsized
  • Stack widgets can now shrink and grow as panel width changes.
  • A Lua Scripts Installer module now runs at startup offering to install the lua scripts unless they are already installed or the module has been disabled by the user. The module uses the git executable to install the scripts so it must be present on the user's system in order for this to work.
  • darktble uses Lua 5.3. Lua 5.4 has been released and is now the default Lua for some distributions. Please install the Lua 5.3 library package if your distribution is using Lua 5.4 as the default. If you compile darktable, then you may also set DONT_USE_INTERNAL_LUA to OFF in the DefineOptions.cmake file to use the internal Lua.
  • Changed Dependencies:
  • Due to the current GMIC version windows users may have to rename two libraries in the darktable bin folder to get lut3d module working:libopencv_code4xx and libopencv_videoio4xx should be renamed to libopencv_code440 and libopencv_videoio440 respectively.
  • RawSpeed changes:
  • CR2 decompressor was rewritten, the subsampled (mRAW/sRAw) data is now stored in packed format, which made interpolation beneficial for auto-vectorization by LLVM/Clang (after fixing over-eager common code hoisting (https://reviews.llvm.org/D84108), and teaching it to perform SROA after loop unrolling (https://reviews.llvm.org/D87972)), resulting in modest performance improvements, also, 4:2:0 case was parallelized: see darktable-org/rawspeed@5743628 / darktable-org/rawspeed@11eccf1

New in darktable 3.2.1 (Aug 10, 2020)

  • The Big Ones:
  • The lighttable view has been rewritten and the filmstrip reworked, resulting in large performance gains, especially when using the zoomable lighttable view. The culling view has also been rewritten from scratch. Operations are smooth at any screen resolution up to 8k.
  • Many types of overlay are now possible on lighttable thumbs. Different overlay information can be selected depending on the thumb size on the lighttable. The different sizes can be set in the preferences, so we can have no overlay at all for small thumbs and full overlay when large thumbs are displayed. This is fully configurable.
  • Likewise, the tooltip information when hovering the thumbs can be activated/deactivated based on the thumbs size.
  • The lighttable modules have improved user interaction: buttons are highlighted only when the context makes the action possible.
  • A complete overhaul of the CSS has been done. This gives darktable a professional look. This continues the goal to make every single aspect of the UI themable using CSS.
  • The Color Picker and Location modules are updated to better fit into the new UI, and most of the icons have been altered so as to be more visually balanced.
  • The preference dialog has been fully reviewed and reorganized to propose a better look and require less scrolling. It is also possible to add some CSS rules directly into
  • the preference dialog to tweak darktable's look as well as to directly control the font size and DPI values from the general preference tab.
  • A search field has been added to the shortcuts tab to help you find the keyboard shortcut you want to customize.
  • The new negadoctor module has been added to help inverting negative films.
  • A new histogram display called RGB Parade has been added. At the same time the histogram module height can now be adjusted with Ctrl+Scroll.
  • The metadata feature has been made generic internally and has new features. The user can now select the information they want to see in the metadata editor. This selection is automatically mirrored in the collection and image information modules.
  • Along with a new "notes" field, all the fields are multiline Ctrl+Enter, sizable Ctrl+Scroll and can be set as private (not exported). Metadata collection filters have an entry
  • "not defined". At import time it is possible to choose not to import some metadata.
  • Image change detection has been made more reliable. This affects the lighttable thumbnails change symbol and history collection filter, which is now more accurate. In darkroom navigation, this avoids the need to recalculate an image and save the xmp file when there is no change.
  • A new down-sampling preference has been introduced for faster response in darkroom. The preview is either computed at full resolution (original, default value) or at 1/2, 1/3 or 1/4 of the original size. This allow for better performance but can slightly hinder the precision of the guided filter masking.
  • Note that this is a very delicate feature to implement. A lot of care has been taken to ensure all is correct when using down sampling. It touches all areas of darktable, like masks, guided filter, liquify controls, crop & rotate, lens and perspective corrections...
  • Clarify the three possible workflows. Previous version had a preference to choose whether to auto-apply the base curve module. Many questions were raised about the intention. The new preference introduces three workflows:isplay-referred : use base-curve module sene-referred : use filmic and exposure modules (new default)none : use neither base-curve nor filmic. Filmic RGB is updated to v4 (new color science) with integrated highlight recovery.
  • New Features And Changes:
  • Add support for curved gradients. This can be helpful when putting a gradient mask on an image with a horizon line that is curved due to lens distortion. This can also be for artistic goals.
  • Add support for AVIF file format (requires libavif >= 0.7)
  • Collect module has two new filters: module and module order.
  • The former makes it possible to filter pictures based on the activated modules in the history. The latter can be used to filter based on the pipe version (legacy up to 2.6 releases or v3.0 starting with 3.0 release).
  • Tag in the Collect module keeps track of the selected images order.
  • When a tag is at the first level of the Collect module, any change on the images order is kept along with the selected tag. This allows to the user to associate a specific order with every image (tag) collection.
  • A full rewrite of the pipe ordering has been done. It is now possible to change the order of the pipe using a new module giving access to the legacy order (order used up to 2.6 releases) and the v3.0 order. It is also possible to create module order presets which can be freely applied.
  • Note that the copy/paste of multi-instances when they have been reordered in a way that some other modules are separating them will not keep the same order. This was buggy in previous implementation when the target image had also been reordered in a non-compatible manner or using a different pipe order. In this new versions all the multi-instances will be grouped together keeping their relative order.
  • Note that this work has mainly been done to make the implementation simpler, safer and that will require less maintenance. Also as this implementation records the full pipe order for history and styles it will be the ground for proposing different strategies when applying styles.
  • The retouch module has a new keyboard shortcut "show or hide shapes" which can be mapped to a key to quickly show or hide shapes. This is in addition to the right-click on the image which does the same action.
  • The spot removal module keyboard shortcut to show-hide shapes has been renamed to "show or hide shapes" for clarity and to be consistent with the new keyboard shortcut in the retouch module.
  • It is possible to change the color of all overlays (shapes, guides, etc), in the darkroom. This may come handy on some images where the gray guides were barely visible. The possible colors are now: Grey, Red, Green, Yellow, Cyan, Magenta. The colors can be cycled through using Ctrl+O. In the crop & rotate module, the pan movements can be restricted vertically or horizontally using the Shift or Control respectively.
  • The crop & rotate module now allows format ratios to be entered as a float number.
  • When using a snapshot view, a flag has been added to clearly show the position of the snapshot.
  • Improve the falloff and radius of the vignette to 200% for better control.
  • Add a user-defined mode in the white-balance module to keep the last modification of the module. It is then possible to go back to the last modified setting after selecting another mode (spot for
  • example).
  • Dynamic keyboard shortcuts have been added for combo-boxes making it possible to select next and previous values directly from the keyboard.
  • It is now possible to adjust the color picker areas just after having created them. This is achieved by dragging one of the four little square handles at the corner.
  • Tagging improvements: Entry tag(s) creation works now without an image selected. It allows the user to create a tag on a virtual node, to insert a pipe | character in create tag (menu). The tree display shows the newly created tags.
  • New variables $(LENS), $(EXIF_EXPOSURE_BIAS), $(VERSION_NAME) and $(VERSION_IF_MULTI) have been defined. $(CATEGORYn(category)) works now when multiple values on the same image (for example people) and accepts 9 levels instead of 3 (for n).
  • Four new timestamps are now supported to store the import, last export, last change and last print times. Those timestamps are also made available in the collection module and so can be used to better control of created collections.
  • Multiple image drag & drop works now on map view.
  • Add new preferences for keyboard shortcuts to control how multi-instances are handled (use first or last instance, prefer the visible, active or expanded instance). This also fixes some faults caused when duplicating or deleting modules, and when selecting earlier edits in the history stack.
  • Introspection support has been added into darktable. At this time this does not bring new features for end-users but it has provided a basis for significant simplification of the code. This will provide easier integration of new modules and will ensure better interactivity consistency between modules.
  • Add optional grey-scale export of TIFF for monochrome images.
  • Add some tooltip information for tone equalizer.
  • Some actions, like cropping, have been made more responsive by triggering a fast-pipe mode where the quality of the image is less important while dragging the controls.
  • Better support for HiDPI icons theme on Windows.
  • Add keyboard shortcut for enabling/disabling tooltips Shift+T.
  • Better history stack module order (more logical) for newly-imported images.
  • Add confirmation when deleting/updating presets.
  • It is possible to handle (deleting, applying or exporting) multiple styles in the style module.
  • Applying a style now supports overwrite mode (it previously could only append to the existing history stack). This makes the style module consistent with the copy/paste of history.
  • Rework the sliders to make then look better (smaller and controls a bit more visible).
  • Implement undo/redo for orientation changes from the lighttable. Exported pictures size should be more conservative and stable when flip or orientation is changed.
  • Using Ctrl+Click in the blending module drawn masks, it is possible to allow continuous creation of masks.
  • Continuous mask creation was previously the default in the retouch and spot removal modules. For consistency this has been changed and so now one needo use Ctrl+Click in these modules as well for continuous mask creation.
  • Rejecting an image still keeps the last number of stars. So un-rejecting it will recover the previous star rating.
  • Improve messages when a database lock is detected to give better guidance about the possible solutions, checks to be done for recovering from this situation.
  • Rework local laplacian implementation for a 2x speed-up.
  • Optimize the denoise profile module (bilateral filter) for better performance.
  • Many parts of the histogram code have been reworked for better performance.
  • A new universal toast message framework has been put in place. This is used to display information about changes performed with dynamic keyboard shortcuts when the module is collapsed. It gives visual information about the change being made (like exposure change or new opacity value, etc.).
  • The spot removal module has been enhanced to be more consistent with the functionality of the retouch module. A new button has been added to show/hide shapes. It also now supports continuous shape creation.
  • Add a new keyboard shortcut to toggle last snapshot on/off.
  • Add a new keyboard shortcut to show/hide lib modules.
  • Add a new keyboard shortcut to show/hide drawn masks for the currently active module
  • Allow for more than 500 images in tethered control which is needed for time-lapse.
  • It is now possible to export masks in TIFF format.
  • Duplicate modules now use the new metadata field "version name" in place of the title field to show a description of each image version
  • Fix support of legacy parameters in the basic adjustment module.
  • Add integrated database maintenance policy.
  • Bug fixes:
  • Better performance when using masks.
  • Fix some displayed images issues.
  • Fix to allow the shift modifier to be used in dynamic keyboard shortcuts.
  • Fix exporting private tags issue with different settings along the path.
  • Fix possible freeze on liquify module.
  • Fix long text display when no space is available to show all the text by using an ellipsis. This allows the side panels to be reduced in size without adversely affecting the UI. Fix some crop & rotate issues.
  • Smoother transition for gradient shapes.
  • Fix the snapshot rotation which could go 180° in a single click.
  • Add missing icon for the tone-mapping module.
  • Fix color-zone module min & max indicator in edit by area mode.
  • Enhance performance of blending and retouch, tone equalizer, color-picker modules when masks are set on/off and/or removing some unnecessary reprocessing.
  • Various minor fixes to the shape selection buttons in the retouch module
  • Fix displayed curve in denoise profile Y0U0V0 mode.
  • Film rolls can be ordered by folder name or id (so in chronological order).
  • Fix gphoto camera detection procedure.
  • Fix the opacity issue (second attempt) which led to a mask having no effect.
  • Fix a possible infinite loop in the slideshow module.
  • Fix a possible out-of-bound indexing in the chromatic aberration module.
  • Fix issues when importing duplicates.
  • Fix possible race condition in tone equalizer module.
  • Changed Dependencies:
  • RawSpeed changes:
  • New Panasonic 'V6' decompressor
  • Huffman table implementations rewrite/cleanup
  • Fuji compressed raw decompressor performance improvements (-13% wall clock)
  • Canon CRW decoding performance improvements (-15% wall clock)
  • DNG LJpeg decompressor support for images with 2 components / pixel
  • DNG Deflate decompressor support for images with more than 1 component / pixel
  • Fuji compressed raw decompressor support for 16-bit raws
  • Continuation of ongoing collaboration with LLVM, highlights include many
  • little steps towards making it possible to auto-vectorize GoPro's VC5
  • decompressor loops, Canon S-RAW interpolator loops; more changes upcoming.
  • Camera support, compared to 3.0.0:
  • Base Support:
  • Fujifilm FinePix S1
  • Fujifilm GFX 100 (compressed)
  • Fujifilm X-Pro3 (compressed)
  • Fujifilm X-T200
  • Fujifilm X-T4 (compressed)
  • Fujifilm X100V (compressed)
  • Hasselblad H4D-50
  • Hasselblad X1D II 50C
  • Hasselblad X1DM2-50c
  • Nikon COOLPIX P950 (12bit-uncompressed)
  • Nikon D780 (12bit-compressed, 14bit-compressed)
  • Nikon Z 50 (12bit-compressed, 14bit-compressed)
  • Olympus E-M1MarkIII
  • Olympus E-PL10
  • Panasonic DC-FZ10002 (3:2)
  • Panasonic DC-GX880 (4:3)
  • Panasonic DC-S1 (3:2)
  • Panasonic DC-S1H (3:2)
  • Panasonic DC-S1R (3:2)
  • Panasonic DC-TZ91 (4:3)
  • Panasonic DC-TZ95 (4:3)
  • Panasonic DC-TZ96 (4:3)
  • Panasonic DC-ZS80 (4:3)
  • Panasonic DMC-FZ40 (1:1, 3:2, 16:9)
  • Panasonic DMC-FZ45 (1:1, 3:2, 16:9)
  • Sony ILCE-6100
  • Sony ILCE-9M2
  • White Balance Presets:
  • Canon EOS 77D
  • Canon EOS 9000D
  • Fujifilm X-E3
  • Fujifilm X-T30
  • Fujifilm X-T4
  • Nikon COOLPIX P1000
  • Olympus E-M1MarkIII
  • Olympus E-PL6
  • Olympus TG-5
  • Panasonic DC-GH5
  • Panasonic DC-TZ95
  • Panasonic DC-TZ96
  • Panasonic DC-ZS80
  • Samsung NX1
  • Sony ILCE-7RM4
  • Noise Profiles:
  • Canon EOS-1Ds
  • Fujifilm X-H1
  • Fujifilm X-T100
  • Fujifilm X-T30
  • Fujifilm X-T4
  • Nikon COOLPIX P1000
  • Nikon Z 50
  • Olympus E-510
  • Olympus E-M1MarkIII
  • Olympus E-M5 Mark III
  • Olympus TG-6
  • Panasonic DC-GF9
  • Panasonic DC-GX800
  • Panasonic DC-GX850
  • Panasonic DC-GH5
  • Panasonic DC-TZ95
  • Panasonic DC-TZ96
  • Panasonic DC-ZS80
  • Sony DSC-RX100M6
  • Sony DSC-RX100M7
  • Sony ILCE-6600
  • Sony ILCE-7RM4
  • Sony ILCE-9
  • Sony ILCE-9M2
  • Translations:
  • German
  • European Spanish
  • French
  • Hebrew
  • Italian
  • Polish
  • Brazilian Portuguese
  • Russian
  • Slovenian

New in darktable 3.0.2 (Apr 18, 2020)

  • New Features And Changes:
  • Better UI for the blend modes which are now grouped by category.
  • Ctrl+Click can be used to rename a module instance.
  • Allow larger vignette scale.
  • Add pseudo preset in whitebalance to keep user's modifications.
  • In crop&rotate module it is possible to allow only vertical composition change using the Shift modifier when dragging the crop area and horizontal one using the Ctrl modifier.
  • Bug fixes:
  • Fix color peaking mode in culling mode.
  • Fix single expanded module in some cases.
  • Fix a watermark issue that could crash darktable.
  • Fix issue with gradient mask rotation in some cases.
  • Fix upward compatibility support in base adjustment module.
  • Fix issues on some Lut 3D files.
  • Base Support:
  • Fujifilm GFX 100 (compressed)
  • Fujifilm X-Pro3 (compressed)
  • Fujifilm X100V (compressed)
  • Nikon COOLPIX P950 (12bit-uncompressed)
  • Nikon Z 50 (12bit-compressed, 14bit-compressed)
  • Olympus E-M1MarkIII
  • Panasonic DC-S1 (3:2)
  • Panasonic DC-S1R (3:2)
  • Panasonic DC-TZ91 (4:3)
  • Panasonic DC-TZ95 (4:3)
  • Panasonic DC-TZ96 (4:3)
  • Panasonic DC-ZS80 (4:3)
  • Sony ILCE-6100
  • White Balance Presets:
  • Canon EOS 77D
  • Canon EOS 9000D
  • Nikon COOLPIX P1000
  • Panasonic DC-GH5
  • Olympus E-M1MarkIII
  • Olympus E-PL6
  • Olympus TG-5
  • Samsung NX1
  • Noise Profiles:
  • Olympus E-M1MarkIII
  • Translations:
  • Catalan
  • Czech
  • Danish
  • German
  • European Spanish
  • French
  • Hebrew
  • Hungarian
  • Italian
  • Japanese
  • Norwegian
  • Dutch
  • Polish
  • Russian
  • Slovenian

New in darktable 3.0.1 (Mar 9, 2020)

  • The Big Ones:
  • A new color assessment mode is introduced into the darkroom. This mode is designed to ensure proper color perception based on ICC recommended (ISO 12646:2008) colour proofing conditions.
  • It is now possible to resize the left and right panels directly with the mouse. The positions of each one is remembered for each views' layout.
  • Add a focus peaking mode in the lighttable and darkroom. The default key to toggle this mode is Ctrl+Shift+F
  • The wavelet denoise profile has a new Y0U0V0 mode. This new mode makes it possible to denoise the chroma and luma noise in a single instance.
  • New Features And Changes:
  • Add darkroom loading screen.
  • Make modules labels a bit smaller for better UI consistency.
  • Add small rectangle around the angle display when using the straightening tool for better visibility.
  • Ensure the different views layout are recorded. Many views (and mode like lighttable's culling or darkroom's color assessment), can have the filmstrip or timeline bottom widgets, we record the exact layout for each view and mode.
  • Add tool tips on module in history.
  • Add support for applying back the last added key-word with a simple key short-cut. Default short-cut is Alt+T.
  • Add wide-gamut HLG/PQ based color space P3 and Rec2020.
  • Add custom borders support in framing module.
  • Add standard variables support in watermark module.
  • Allow the same short-cuts to be defined by different modules. This makes it possible to have the filmstrip using the same short-cuts to set stars as the lighttable.
  • Add log editing support for the L, R, G, B, C, g blending modes. This gives more control on the dark pixels.
  • Define many new accels for most of the sliders to allow more control using the keyboard.
  • The images operations modules has been extended to support copying, replacing and merging metadata.
  • Better visibility for the zoomed image part in the navigation widget.
  • Revert to smooth mode (was default in 2.6) in color zone module.
  • It is now possible to resize the collect module windows with Ctrl+Scroll.
  • Add support for compressed LUT (.gmz) in the 3D LUT module.
  • Use a more natural folder order in the collect module, the latest folder are now listed first.
  • Module search in darkroom is now case-insensitive.
  • Bug fixes:
  • All valid LUT files are displayed in file selector.
  • Fix straightening in crop and rotate module when flip is applied.
  • The ellipse and gradient masks can now be manipulated when the crop and rotate flip is activated.
  • Fix style editing from lighttable. The modules list was empty due to an error in SQL statement.
  • Make clicking on group icon easier. The active zone around the group icon was too small.
  • Make sure no more than 64 spots are added in spot removal module and display a message when the limit is reached.
  • Delay histogram display until the image is fully loaded and so the corresponding histogram is ready. Darktable was displaying the previously computed histogram for a short period of time.
  • Properly update the XMP when doing undo/redo actions.
  • Fix discrepancies between the SSE/OpenCL local Laplacian code paths.
  • Better performance for tone equalizer's guided filter.
  • Exports should now better respect the final dimensions requested.
  • Fix issues with brush opacity handling.
  • Better performance for computing the aspect ratio.
  • Fix importing of duplicates on Windows.
  • Better visibility of tone curve grid on Grey theme.
  • Better accuracy for the keystone OSD lines.
  • Better performance and accuracy improvements for the waveform histogram.
  • Some HiDPI fixes in icons.
  • The Facebook, Google Photo and Flickr export storage have been removed as not supported anymore due to deep changes in the provider making it very hard to fix.
  • Fix brush OSD when in zoom mode. The brushes are now keeping thin lines.
  • Fix watermark blurring when using rotation.
  • Fix using apostrophe in meta-data.
  • Fix time-line display reporting 61 minutes per hour.
  • Remove wrong presets in RGB-curve module.
  • Fix some duplicate pipe recomputation.
  • White Balance Presets:
  • Canon EOS 77D
  • Canon EOS 9000D
  • Nikon COOLPIX P1000
  • Panasonic DC-GH5
  • Noise Profiles:
  • Canon EOS-1Ds
  • Fujifilm X-H1
  • Fujifilm X-T30
  • Olympus E-510
  • Panasonic DC-GH5
  • Sony ILCE-6600
  • Sony ILCE-7RM4
  • Sony ILCE-9

New in darktable 3.0.0 (Dec 24, 2019)

  • The Big Ones:
  • A full rework of the GUI. The whole GUI is now fully
  • controlled by GTK+ CSS rules. There is no more size, color, position in Gtk C code, which makes the whole GUI themable. This version comes with several themes.
  • New shortcuts have been introduced to quickly collapse borders, sidebars, histogram and navigation modules, allowing a new borderless editing experience.
  • Note that the new GUI requires Gtk+ 3.22 or higher to work properly.
  • It's now possible to associate dynamic key shortcuts to sliders, then use them with the mouse wheel or arrow keys to move the value up and down. For example, associating the E key to the exposure slider, you can press it and scroll to increase the exposure without having to open the module. You get fast heads-up access to all your favorite settings, as if you were using a dedicated multimedia console.
  • The color picker on the 'tone curve', 'color zones' and 'fill light' modules, as well as the parametric mask controls, now allows you to select an area when enabled by using Ctrl+click on the button.
  • Added undo/redo support in lighttable for tags, color labels, ratings, metadata, deleted history stack, pasted history stack and applied styles.
  • IMPORTANT: The 'preview' and 'preview with focus detection' actions (previously Z and Ctrl+Z respectively) are now assigned to W and Ctrl+W in order to follow the convention of using Ctrl+Z for the "undo" function (Ctrl+Y for redo).
  • A new timeline view has been introduced in the lighttable.
  • A new 'culling' mode has been added to the lightable view. It displays a fixed number of consecutive images starting from the first selected, and allows you to pan & zoom them. The number of displayed images can be set by the user, and they can be navigated with the mouse wheel and keyboard.
  • A quite extensive rewrite of the lighttable view (including the filmstrip in darkroom view) has been made to greatly improve the overall performance. The lighttable is now usable on 4K and 5K monitors.
  • Added support for the new 'raster mask', a copy of a parametric mask which is stable during the whole pixel-pipe.
  • The processing order of the pixel-pipe can now be changed by using Ctrl+Shift+drag on the module headers to arrange them relative to each other. It is VERY IMPORTANT to understand that this feature is NOT for creating a more convenient GUI layout, but for changing the actual processing of the image. DO NOT USE THIS FEATURE unless you understand the reason behind the default ordering, and have a specific reason for changing it. The default order is still the correct order for most purposes. Also note that styles will always apply the default ordering; creating a style based on modules which have had their order changed will NOT recreate this changed order when applied, and therefore may not give the expected result.
  • The history stack will now always show mandatory modules which were previously hidden. They are always active as necessary for processing images, and are not removed by compressing history or by selecting one as a stating point for editing.
  • These seven modules (some are RAW-only) have a specific icon to identify them easily.
  • The 'color zones' module now shows a histogram based on the chosen ‘select by’ channel, and if the color picker is in 'select area' mode, the range within the selected area will also be shown. By default, the spline adjustment is now similar to the curve controls, allowing you to add and delete nodes, but these nodes can still be moved with the old-style size control by selecting the 'edit by area' checkbox. There is also a new 'strong' processing option, and a new color picker which creates a curve based on selected image area.
  • A new module 'filmic RGB' which, like the previous 'filmic', is designed to replace 'base curve', 'shadows and highlights' and other global tone-mapping modules. This new version replaces the one introduced in 2.6.2; it should be easier to use, and it will reduce color casts. The old 'filmic' module is now deprecated and is only available on images where it was already used for editing.
  • A new module 'tone equalizer' is designed to merge the features of 'zone system', 'shadows and highlights', and (local) 'tone mapping' modules in a scene-referred RGB space. It brings an easy and safe way to remap tones locally, performing a quick zone-based dodging and burning using Ansel Adam's zone system logic. The module provides an interface similar to audio graphic equalizers, with 9 bands (available as fixed sliders or nodes on a spline view), allowing you to selectively push or pull the exposure for each band in the range from blacks to specular highlights. It also features an interactive cursor that allows to push or pull the exposure gains directly from the image preview by simply hovering over an area and scrolling. It uses a guided filter internally to refine the dodging and burning mask, which preserves local contrast without producing halos along edges.
  • New Features And Changes:
  • A new module for handling 3D RGB Lut transformations (PNG Hald-CLUT and Cube files are supported).
  • Many improvements to the 'denoise (profiled)' module. The degree of shadow denoising can be controlled, including the correction of color casts (mainly improves high-ISO images). "Auto" modes which infer some parameters from the profile are available, allowing users to create presets which are adaptive to various ISO values. The default values of the sliders are also adapted dynamically on module activation, giving a good trade-off between noise smoothing and detail preservation. The non-local means mode has 2 new options: one to coarse-grain denoising, and one to control the amount of fine detail to preserve. The controls now have soft boundaries, which means that users can use the keyboard to enter values outside the range of the sliders if they need to.
  • Along with selecting the 'soft proof' color profile, users can now select an additional profile for the color space of the histogram, color picker and overexposed checker. When gamut or softproof checks are active the histogram and color picker use the softproof profile, otherwise they use the new histogram profile (which is always used for overexposure checking).
  • A new setting for 'working profile' has been added to the input color profile module. This color space will be used by RGB modules between the input and output color profile modules.
  • A new color picker has been added to the parametric masking controls which adjusts the range sliders based on the selected area from the image. Click the picker button to adjust the input image slider, Ctrl+click the button to adjust the output image slider.
  • The 'picasa' target storage in the export module has been completely rewritten to support the new Google Photo API, and renamed 'google photos'. It is again possible to create albums directly from the export module.
  • A new single-line image information display can be positioned at the top (left, right, or center) or bottom (center) of the darkroom view to replace the information previously overlaid on the histogram. The specific information shown can be configured in preferences.
  • The 'tagging' module is faster, and can now display hierarchical tags in a tree view. Tags can now be designated as 'private' (not exported by default), 'synonym' (to help search engines), and 'category' (not exported, for organizing the tag library). The metadata exported with images can now be configured in the 'export selected' module, allowing you to choose which main types are exported, as well as define values for specific tags based on formulas.
  • Many code optimizations for CPU and SSE paths. The tone equalizer module introduces a new optimization paradigm (GCC target clones), aimed toward users of pre-built Linux packages. The image-processing code will be cloned for several CPU generations (SSE2, SSE3, SSE4, AVX, AVX2) at compilation time, and the best-suited version of the code will be chosen by the system at run time. This experiment is to be generalized to other modules if proven successful, and will allow users of pre-built packages to get the same performance as if the program was specifically compiled for their computer. It needs GCC 9 compiler and does not yet work on Windows due to the lack of support of target clones on the OS side.
  • A new preference to expand/collapse a darkroom module when it is activated/deactivated.
  • The 'collect images' module has a new single-click option featuring range selection for date-time and numeric values.
  • The orientation of drawn masks using the 'gradient' shape is now clearly displayed with an arrow.
  • The 'graduated density' module has better accuracy when computing the rotation to avoid sporadic flipping of the gradient.
  • Make sure the OpenCL kernel code is recompiled when the driver version is updated.
  • Add color pickers for 'split toning', 'graduated density' and 'watermark' modules.
  • The color picker positions are kept during editing within a module.
  • The map view can zoom on the images of the selected collection.
  • The slideshow will now start at the selected images if any, and supports changing the delay between images. It will also now be more responsive when manually moving backward and forward through the images.
  • A new 'basic adjustments' module has been added. It allows to adjust the black level, exposure, highlight compression, contrast, middle grey, brightness and saturation. It also has an auto feature based on Rawtherapee's auto levels that can work on the entire image or a user selected area.
  • A new 'rgb curve' module has been added. It has modes for linked and independent RGB channels. The curves and histogram can be displayed using the working profile or can be scaled to be 50% grey. A secondary color picker will add 4 nodes to the curve based on the area selected in the image: min, average, middle, and max.
  • A new 'rgb levels' module has been added. It has linked and independent channels, preserve colors option and is native RGB.
  • A new search box has been added to the module groups in the darkroom view, with configuration options to show only the module groups, only the search box, or both. Modules are searched for by (localized) name, and when displaying only the search box, the active modules are shown when the box is empty. A shortcut can be set for focusing the box.
  • A preview window has been added to the darkroom that displays the edited image on a separate window.
  • A new option 'skip' is added to the 'on conflict' setting on the export module which skips the exporting to existing destination files.
  • Allow to switch between clone/heal and blur/color modes in 'retouch' module after creating a shape using Ctrl+click on corresponding mode icon.
  • An accels window (H) has been added to summarize all available shortcuts and mouse actions available in the current context.
  • A zoom & pan feature has been added to lighttable full preview.
  • The base-curve module is now using luminance color preservation by default. This can give slightly less saturated pictures compared to the previous version where no color preservation was made. But it will generally avoid color shift.
  • Bug fixes:
  • The color picker support has been fixed by a complete rewrite. It should now give correct values in all cases.
  • Fix overexposed display.
  • Do not disable SSL for storage modules.
  • A long standing bug on mask distort in Liquify module has been fixed. This was visible when a liquify mask was used together with the perspective correction module activated.
  • A bug on mask distort from crop & rotate when using flip and some angle has been fixed.
  • Fix manual crop in perspective correction module when not in default orientation.
  • The modification of date/time is now stored into the XMP. This ensures that removing the picture and reloading will keep the changes.
  • Fix orientation to support all cases as exposed in these examples:
  • https://github.com/recurser/exif-orientation-examples
  • Store the panel states for each lighttable mode.
  • Fix crop&rotate and orientation in the lightroom importer.
  • Fix ProPhoto RGB profile.
  • Fix exif lens metadata parsing containing comma.
  • Lua:
  • The displayed image in darkroom view can now be changed.
  • GUI panel visibility can now be queried and changed.
  • Lighttable view toolbox (rating filter, rating comparator, sort field, and sort direction) can now be changed.
  • Lighttable layout and zoom level can now be changed.
  • All images containing a specific tag can be searched and returned.
  • Changed Dependencies:
  • CMake 3.10 is now required.
  • OpenMP 4.0 is now required (optional dependency).
  • RawSpeed changes:
  • Changed Dependencies:
  • CMake 3.10 is now required.
  • Pugixml 1.8 is now required.
  • OpenMP 4.0 is now required (optional dependency).
  • POSIX threads are no longer required.
  • zlib 1.2.11 is now required (optional dependency).
  • Changes:
  • Threading was migrated to OpenMP from POSIX threads.
  • Phase One IIQ decompressor fixes (quadrant scaling, bad column).
  • Large-scale code cleanup, hardening is ongoing still.
  • A CMake infrastructure was added to allow integration of RawSpeed into LLVM LNT / Test-Suite.
  • Continuation of collaboration with LLVM Compiler Infrastructure Project.
  • Widespread performance tuning, most affected decompressors:
  • Sony ARW2
  • Panasonic V5
  • Phase One
  • Nikon
  • Pentax
  • Canon
  • Samsung V1 (compression = '32772')
  • Samsung V2 (compression = '32773')
  • Camera support, compared to 2.6.0:
  • Base Support:
  • Epson R-D1s
  • Epson R-D1x
  • Fujifilm FinePix F770EXR
  • Fujifilm FinePix S7000
  • Fujifilm GFX 50R (compressed)
  • Fujifilm X-A10
  • Fujifilm X-T30 (compressed)
  • Fujifilm XF10
  • Kodak DCS Pro 14N
  • Kodak EasyShare Z981
  • Kodak EasyShare Z990
  • Leica C (Typ 112) (4:3)
  • Leica CL (dng)
  • Leica Q (Typ 116) (dng)
  • Leica Q2 (dng)
  • Leica SL (Typ 601) (dng)
  • Leica V-LUX (Typ 114) (3:2, 4:3, 16:9, 1:1)
  • Nikon Z 6 (14bit-uncompressed, 12bit-uncompressed)
  • Nikon Z 7 (14bit-uncompressed)
  • Olympus E-M1X
  • Olympus E-M5 Mark III
  • Olympus TG-6
  • Panasonic DC-G90 (4:3)
  • Panasonic DC-G91 (4:3)
  • Panasonic DC-G95 (4:3)
  • Panasonic DC-G99 (4:3)
  • Panasonic DC-ZS200 (3:2)
  • Panasonic DMC-TX1 (3:2)
  • Phase One P30
  • Sony DSC-RX0M2
  • Sony DSC-RX100M6
  • Sony DSC-RX100M7
  • Sony ILCE-6400
  • Sony ILCE-6600
  • Sony ILCE-7RM4
  • White Balance Presets:
  • Leica Q2
  • Nikon D500
  • Nikon Z 7
  • Olympus E-M5 Mark III
  • Panasonic DC-LX100M2
  • Sony ILCE-6400
  • Noise Profiles:
  • Leica Q2
  • Nikon D3
  • Nikon D3500
  • Nikon Z 6
  • Nikon Z 7
  • Olympus E-PL8
  • Olympus E-PL9
  • Panasonic DC-LX100M2
  • Sony DSC-RX100M5A
  • Sony ILCE-6400
  • Sony SLT-A35
  • Translations:
  • Catalan
  • Czech
  • Danish
  • German
  • European Spanish
  • French
  • Hebrew
  • Hungarian
  • Italian
  • Japanese
  • Norwegian Bokmål
  • Dutch
  • Polish
  • Russian
  • Slovenian

New in darktable 3.0.0 RC1 (Nov 14, 2019)

  • The Big Ones:
  • It is now possible to associate dynamic key shortcuts to sliders, and then use the mouse wheel or the arrow keys to move the value up and down. For example, associating "E" to the exposure setting, you can press "E" and scroll to increase the exposure without having to open the module. You get a fast head-up access to all you favorite settings, as if you were using a dedicated multimedia console.
  • The color picker on the 'tone curve', 'color zones' and 'fill light' modules, as well as the parametric mask controls, now allows you to select an area when enabled by using Ctrl+click on the button.
  • Added undo/redo support in lighttable for tags, color labels, ratings, metadata, deleted history stack, pasted history stack and applied styles.
  • A new timeline view has been introduced in the lighttable.
  • A new 'culling' mode has been added to the lightable view. It displays a fixed number of consecutive images starting from the first selected, and allows you to pan & zoom them. The number of displayed images can be set by the user, and they can be navigated with the mouse wheel and keyboard.
  • A quite extensive rewrite of the lighttable view (including the filmstrip in darkroom view) has been made to greatly improve the overall performance. The lighttable is now usable on 4K and 5K monitors.
  • Added support for the new 'raster mask', a copy of a parametric mask which is stable during the whole pixel-pipe.
  • The processing order of the pixel-pipe can now be changed by using Ctrl+Shift+drag on the module headers to arrange them relative to each other. It is VERY MPORTANT to understand that this feature is NOT for creating a more convenient GUI layout, but for changing the actual processing of the image. DO NOT USE THIS FEATURE unless you understand the reason behind the default ordering, and have a specific reason for changing it. The default order is still the correct order for most purposes.
  • The 'color zones' module now shows a histogram based on the chosen ‘select by’ channel, and if the color picker is in 'select area' mode, the range within the selected area will also be shown. By default, the spline adjustment is now similar to the curve controls, allowing you to add and delete nodes, but these nodes can still be moved with the old-style size control by selecting the 'edit by area' checkbox. There is also a new 'strong' processing option, and a new color picker which creates a curve based on selected image area.
  • A new module 'filmic RGB' which, like the previous 'filmic', is designed to replace the 'base curve', 'shadows and highlights' modules and other tone-mapping options. This new version replaces the one introduced in 2.6.2; it should be easier to use, and it will reduce color casts. The old 'filmic' module is now deprecated and is only available on images where it was already used for editing.
  • A new module 'tone equalizer', designed to merge the features of 'local tone mapping', 'zone system' and 'shadows and highlights' modules in a scene-referred RGB space, brings an easy and safe way to remap tones locally, to perform a quick zone-based dodging and burning using Ansel Adam's zone system logic. The module provides an interface similar to HiFi audio bands equalizers, with 9 gains (available as fixed sliders or nodes on an equalizer view), covering the dynamic range from blacks to specular highlights, and allows to selectively push or pull the exposure for each band. It also features an interactive cursor that allows to push or pull the exposure gains directly from the image preview, simply hovering the areas to affect. It uses a guided filter internally to refine the dodging and burning mask in order to preserve the local contrast without producing halos along edges.
  • A full rework of the GUI. The whole GUI is now fully controlled by GTK+ CSS rules. There is no more size, color, position in Gtk C code, which makes the whole GUI themable. This version comes with several themes:
  • Darktable : the default theme
  • Darktable-elegant-darker : more condensed fonts best experience with Roboto font installed
  • Darktable-icons-darker : as elegant, with module icons best experience with Roboto font installed
  • Darktable-elegant-dark : lighter version
  • Darktable-elegant-grey : even lighter version
  • Darktable-icons-dark : lighter version. with module icons
  • Darktable-icons-grey : even lighter version, with module icons
  • New Features And Changes:
  • A new module for handling 3D RGB Lut transformations (PNG Hald-CLUT and Cube files are supported).
  • Many improvements to the 'denoise (profiled)' module. The degree of shadow denoising can be controlled, including the correction of color casts(mainly improves high-ISO images). "Auto" modes which infer some parameters from the profile are available, allowing users to create presets which are adaptive to various ISO values. The default values of the sliders
  • are also adapted dynamically on module activation, giving a good trade-off between noise smoothing and detail preservation. The non-local means mode has 2 new options: one to coarse-grain denoising, and one to control the amount of fine detail to preserve. The controls now have soft boundaries, which means that users can use the keyboard to enter values outside the range of the sliders if they need to.
  • Along with selecting the 'soft proof' color profile, users can now select an additional profile for the color space of the histogram, color picker and overexposed checker. When gamut or softproof checks are active the histogram and color picker use the softproof profile, otherwise they use the new histogram profile (which is always used for overexposure checking).
  • A new setting for 'working profile' has been added to the input color profile module. This color space will be used by RGB modules between the input and output color profile modules.
  • A new color picker has been added to the parametric masking controls which adjusts the range sliders based on the selected area from the image. Click the picker button to adjust the input image slider, Ctrl+click the button to adjust the output image slider.
  • The 'picasa' target storage in the export module has been completely rewritten to support the new Google Photo API, and renamed 'google photos'. It is again possible to create albums directly from the export module. A new single-line image information display can be positioned at the top (left, right, or center) or bottom (center) of the darkroom view to replace the information previously overlaid on the histogram. The specific information shown can be configured in preferences.
  • The 'tagging' module is faster, and can now display hierarchical tags in a tree view. Tags can now be designated as 'private' (not exported by default), 'synonym' (to help search engines), and 'category' (not exported, for organizing the tag library). The metadata exported with images can now be configured in the 'export selected' module, allowing you to choose which main types are exported, as well as define values for specific tags based on formulas.
  • Many code optimizations for CPU and SSE paths. The tone equalizer module introduces a new optimization paradigm (GCC target clones), aimed toward users of pre-built Linux packages. The image-processing code will be cloned for several CPU generations (SSE2, SSE3, SSE4, AVX, AVX2) at compilation time, and the best-suited version of the code will be chosen by the system at run time. This experiment is to be generalized to other modules if proven successful, and will allow users of pre-built packages to get the same performance as if the program was specifically compiled for their computer. It needs GCC 9 compiler and does not work on Windows at this moment, due to the lack of support of target clones on the OS side.
  • A new preference to expand/collapse a darkroom module when it is activated/deactivated.
  • The 'collect images' module has a new single-click option featuring range selection for date-time and numeric values.
  • The orientation of drawn masks using the 'gradient' shape is now clearly displayed with an arrow.
  • The 'graduated density' module has better accuracy when computing the rotation to avoid sporadic flipping of the gradient.
  • Make sure the OpenCL kernel code is recompiled when the driver version is updated.
  • Add color pickers for 'split toning', 'graduated density' and 'watermark' modules.
  • The color picker positions are kept during editing within a module.
  • The map view can zoom on the images of the selected collection.
  • The slideshow will now start at the selected images if any, and supports changing the delay between images. It will also now be more responsive when manually moving backward and forward through the images.
  • A new 'basic adjustments' module has been added. It allows to adjust the black level, exposure, highlight compression, contrast, middle grey, brightness and saturation. It also has an auto feature based on Rawtherapee's auto levels that can work on the entire image or a user selected area.
  • A new 'rgb curve' module has been added. It has modes for linked and independent RGB channels. The curves and histogram can be displayed using the working profile or can be scaled to be 50% grey. A secondary color picker will add 4 nodes to the curve based on the area selected in the image: min, average, middle, and max.
  • A new 'rgb levels' module has been added. It has linked and independent channels, preserve colors option and is native RGB.
  • A new search box has been added to the module groups in the darkroom view, with configuration options to show only the module groups, only the search box, or both. Modules are searched for by (localized) name, and when displaying only the search box, the active modules are shown when the box is empty. A shortcut can be set for focusing the box.
  • A preview window has been added to the darkroom that displays the edited image on a separate window.
  • A new option 'skip' is added to the 'on conflict' setting on the export module which skips the exporting to existing destination files.
  • Allow to switch between clone/heal and blur/color modes in 'retouch' module after creating a shape.
  • An accels window has been added to summarize all available shortcuts and mouse actions available in the current context.
  • Dynamic shortcuts have been added for darkroom module sliders. They allow to change slider values with an accel + mouse scroll.
  • A zoom & pan feature has been added to lighttable full preview.
  • Bug fixes:
  • The color picker support has been fixed by a complete rewrite. It should now give correct values in all cases.
  • Fix overexposed display.
  • Do not disable SSL for storage modules.
  • A long standing bug on mask distort in Liquify module has been fixed. This was visible when a liquify mask was used together with the perspective correction module activated.
  • A bug on mask distort from crop & rotate when using flip and some angle has been fixed.
  • Fix manual crop in perspective correction module when not in default orientation.
  • The modification of date/time is now stored into the XMP. This ensures that removing the picture and reloading will keep the changes.
  • Fix orientation to support all cases as exposed in these examples.
  • Store the panel states for each lighttable mode.
  • Fix crop&rotate and orientation in the lightroom importer.
  • Fix ProPhoto RGB profile.
  • Fix exif lens metadata parsing containing comma.
  • Lua:
  • The displayed image in darkroom view can now be changed.
  • GUI panel visibility can now be queried and changed.
  • Lighttable view toolbox (rating filter, rating comparator, sort field, and sort direction) can now be changed.
  • Lighttable layout and zoom level can now be changed.
  • All images containing a specific tag can be searched and returned.
  • Changed Dependencies:
  • CMake 3.10 is now required.
  • OpenMP 4.0 is now required (optional dependency).
  • RawSpeed changes:
  • Changed Dependencies:
  • CMake 3.10 is now required.
  • Pugixml 1.8 is now required.
  • OpenMP 4.0 is now required (optional dependency).
  • POSIX threads are no longer required.
  • zlib 1.2.11 is now required (optional dependency).
  • Changes:
  • Threading was migrated to OpenMP from POSIX threads.
  • Phase One IIQ decompressor fixes (quadrant scaling, bad column).
  • Large-scale code cleanup, hardening is still a work in progress.
  • A CMake infrastructure was added to allow integration of RawSpeed into LLVM LNT / Test-Suite.
  • Widespread performance tuning, most affected decompressors:
  • Sony ARW2
  • Panasonic V5
  • Samsung V1
  • Phase One

New in darktable 3.0.0 RC0 (Nov 5, 2019)

  • A full rework of the GUI Gtk/CSS. The whole GUI is now fully
  • controlled by CSS rules. There is no more size, color, position in
  • Gtk C code. This makes the whole GUI themable. This version comes
  • with different theme:
  • darktable : the default theme
  • darktable-elegant-darker : more condensed fonts
  • best experience if Roboto font installed
  • darktable-icons-darker : as elegant, with IOP icons
  • best experience if Roboto font installed
  • darktable-elegant-dark : lighter version
  • darktable-elegant-grey : even lighter version
  • darktable-icons-dark : lighter version
  • darktable-icons-grey : even lighter version
  • Note that this requires Gtk 3.22 or higher to work properly.
  • The color picker on the blend, tone curve, color zones and fill
  • light modules now allows to select an area by Ctrl+click on it.
  • Add undo/redo support in lighttable for tags, color labels, rating,
  • metadata, deleted history stack, pasted history stack and applied style.
  • IMPORTANT:
  • As Ctrl-z is commonly used for undo/redo this is what is used on the lighttable. This conflicts with the previous Ctrl-z which was assigned to preview with focus point. The preview (previously z) and preview with focus detection (previously Ctrl-z) are now assigned respectively to w and Ctrl-w.
  • A new timeline view has been introduced in the lighttable.
  • A new lighttable mode 'culling' is added. It displays a fixed number of consecutive images, starting from the first selected image and
  • allows to pan & zoom them. It can be navigated with the mouse wheel and keyboard and the number of displayed images can be set with an entry at the bottom.
  • A quite extensive rewrite of the lighttable has been made to improve drastically the overall performance. This also includes the filmstrip which has also received a big rewrite for the same reasons. The lighttable is now usable on 4K and 5K monitors.
  • Add new raster mask supports. This is a copy of a parametric mask which is stable during the whole pixel-pipe.
  • Modules can now be re-ordered with Ctrl+Shift+drag.
  • IMPORTANT PLEASE READ:
  • Note that this is NOT a GUI re-ordering but a pixel-pipe reordering. If you're not familiar with pixel pipe order and the actual quality that could result from changing the default, do not change the order.
  • The default order has been set to give the best result in the majority of time and will never be on the wrong side.
  • The color zones module now display an histogram based on the ‘select
  • by’ channel and displays the selected range if the color picker is in area mode.
  • It acts now like the tone curve (but horizontal), it has two edit modes: edit by area is the former one, if not checked nodes can be edited like in the tone curve, delete only works by right-click when not in edit area mode.
  • A new process mode has been added: smooth is the former one, strong is new.
  • An interpolation method has been added that allows to select different types of curves.
  • The color picker allows to select by area with Ctrl+click.
  • A new color picker has been added that creates a curve based on the are selected from the image.
  • When pressing the shortcut 'pan&zoom while editing masks' the draw area can now be zoomed. Double-click on the bottom bar resets the zoom.
  • New module Filmic RBG. This module is designed to replace the base curve, shadows and highlights. The new filmic rgb module replaces the old one introduced in 2.6.2 and should be easier to use and will reduce color casts. The old filmic module is now deprecated and cannot be used on new developments.
  • New module tone equalizer which brings an easy and safe way to adjust the tones in different areas of the image. The module comes with 9 controls ranging from blacks area to specular ones. It possible to adjust each area with slides, curve or directly over the image with a controllable picker.
  • New Features And Changes:
  • A new module for handling 3D Lut transformations (PNG Hald-CLUT and
  • Cube files are supported).
  • Many changes to denoise profiled. The variance stabilization transform has changed, allowing a finer control of denoising. In particular, it is possible to better denoise the shadows, and correct color casts that may occur in the shadows. This change mainly improves the denoising of high ISO images.
  • The non-local means mode has 2 new options: an option to scatter the search zone, and an option to control the amount of details to keep.
  • In addition, one "auto" mode was added both for wavelets and non-local means. This mode infers some parameters from the profile used.
  • The default values of the sliders are also changed dynamically in the same way. As such, user who want a one click denoising can activate the module
  • and get straight away a good trade-off between noise smoothing and detail preservation.
  • The auto modes allow the user to create their own presets that will adapt to various ISOs.
  • Finally denoise profiled controls now have soft boundaries, which means that users can enter values out of visible bounds using the keyboard if they need to.
  • A new profile ‘histogram profile’ has been added on the same pop-up that the softproof one on the darkroom. It controls the color space of the histogram, color picker and overexposed check. When gamut or softproof checks are active the histogram and color picker use the softproof profile, otherwise they use the histogram profile. The overexposed check always use the histogram profile.
  • A new profile 'work profile' has been added to the input color profile module. Now RGB modules between the input and output color profile modules will work with this profile.
  • A new color picker has been added to the blend module next to the existing one that adjusts the range sliders based on the selected area from the image. Click to adjust the input image slider, Ctrl+click to adjust the out image one.
  • The picasa module has been renamed to googlephoto and completely rewrote to support the new Google Photo API. It is now again possible to create albums directly from the export module.
  • New module image information which can be positioned at the bottom or the top of the darkroom. The information displayed can be changed via the preferences. This module can replace the image information displayed on the histogram.
  • The tagging module is faster than before and has got new features.
  • The most visible one is the ability to display hierarchical tags in a tree view. New commands (context menu) have been added to help to maintain your tags dictionary.
  • It introduces also the notions of private tags (not exported by default), synonyms (to help search engines) and categories (not exported, can be used as an helper to structure your tags without polluting them and/or to define metadata fitting with your needs).
  • In line with these new features, exported metadata are now configured in export selected module.
  • The main metadata types can be set as exported or not, but you can also define one by one specific metadata, you fill in with available dt information, in particular tags and categories (metadata formulas share the same set of variables than file name in the same module).
  • Many code optimizations for CPU and SSE paths.
  • A new preference to expand/collapse a darkroom module when it is activated/deactivated.
  • The collect module supports single click if the corresponding new option is activated.
  • The collect module supports range selection (for numeric/dates) when using single click mode.
  • The gradient mask orientation is now clearly displayed by using an
  • arrow.
  • Add support for theme, and allow to dynamically load theme from the preferences.
  • The graduatednd module has better accuracy when computing the
  • rotation to avoid the gradient to flip sporadically.
  • Make sure the OpenCL kernel code are recompiled when the driver version is updated.
  • Add color pickers in the split toning module.
  • Add color pickers in the graduatednd module.
  • Add color picker to the watermark module.
  • The color picker point positions are kept during the editing on the module.
  • The map view will zoom on the images of the selected collection.
  • The slideshow supports changing the delay between each images.
  • The slideshow will now start at the selected pictures if any.
  • The slideshow will now be more responsive when changing the picture backward and forward.
  • A new module 'basic adjustments' has been added. It allows to adjust
  • the exposure, highlight compression, contrast, brightness and saturation.
  • It also has an auto feature based on Rawtherapee's auto levels that can work on the entire image or a user selected area.
  • Both the contrast and the auto feature use the middle grey point, the default for this setting is based on the work profile.
  • A new module 'rgb curve' has been added. It has linked and independent RGB channels.
  • It works with the rgb color space selected on the work profile.
  • The curves and histogram can be displayed using the work profile or can be scaled to be 50% grey.
  • The color picker allows to select by area with Ctrl+click.
  • The second color picker add 4 nodes to the curve based on the area selected from the image: min, average, middle, max.
  • When pressing the shortcut 'pan&zoom while editing masks' the draw area can be zoomed.
  • Different types of curves can be selected.
  • A new module 'rgb levels' has been added. It has linked and independent channels, preserve colors option and is native RGB.
  • A search text has been added to the module groups in the darkroom. It has a configuration option to show only the modules groups, only the search text or both. Modules are searched by name (localized).
  • If displaying only the search text, the active pipe modules are displayed when the search text is empty. A darkroom shortcut can be set to focus on the search box.
  • A preview window has been added to the darkroom that displays the edited image on a separate window.
  • A new option 'skip' is added to the 'on conflict' setting on the export module that skips the export if the file already exists.
  • Allow to change algorithm clone/heal and blur/color in retouch module.
  • An accels window has been added to summarize all available shortcuts and mouse actions available in the current context.
  • Dynamic shortcuts have been added for darkroom module sliders. They allow to change slider values with an accel + mouse scroll.
  • Add zoom & pan feature to lighttable full preview..
  • Bug fixes:
  • The color picker support has been fixed by a complete rewrite. It should now gives correct values in all cases.
  • Fix overexposed display.
  • Do not disable SSL for storage modules.
  • A long standing bug on mask distort in Liquify module has been fixed. This was visible when a liquify mask was used together with the perspective correction module activated.
  • A bug on mask distort from crop & rotate when using flip and some angle has been fixed.
  • Fix manual crop in perspective correction module when not in default orientation.
  • The modification of date/time is now stored into the XMP. This ensure that removing the picture and reloading will keep the change made.
  • Fix orientation to support all cases as exposed in these examples:
  • https://github.com/recurser/exif-orientation-examples
  • Store the panel states for each lighttable mode.
  • Fix crop&rotate and orientation in the lightroom importer.
  • Lua:
  • The displayed image in darkroom view can now be changed
  • GUI panel visibility can now be queried and changed
  • Lighttable view toolbox (rating filter, rating comparator, sort field, and sort direction) can now be changed
  • Lighttable layout and zoom level can now be changed
  • All images containing a specific tag can be searched and returned
  • Changed Dependencies:
  • CMake 3.10 is now required
  • OpenMP 4.0 is now required (optional dependency)
  • RawSpeed changes:
  • Changed Dependencies
  • CMake 3.10 is now required
  • Pugixml 1.8 is now required
  • OpenMP 4.0 is now required (optional dependency)
  • POSIX threads are no longer required
  • zlib 1.2.11 is now required (optional dependency)
  • Changes:
  • Threading was migrated to OpenMP from POSIX threads
  • Phase One IIQ decompressor fixes (quadrant scaling, bad column)
  • Large-scale code cleanup,hardening is ongoing still
  • An CMake infrastructure was added to allow integration of RawSpeed into LLVM LNT / Test-Suite
  • Widespread performance tuning, most affected decompressors:
  • Sony ARW2
  • Panasonic V5
  • Samsung V1
  • Phase One
  • Continuation of collaboration with LLVM Compiler Infrastructure Project
  • Camera support, compared to 2.6.0
  • Base Support
  • Epson R-D1s
  • Epson R-D1x
  • Fujifilm FinePix F770EXR
  • Fujifilm FinePix S7000
  • Fujifilm GFX 50R (compressed)
  • Fujifilm X-T30 (compressed)
  • Fujifilm XF10
  • Kodak DCS Pro 14N
  • Kodak EasyShare Z981
  • Kodak EasyShare Z990
  • Leica C (Typ 112) (4:3)
  • Leica CL (dng)
  • Leica Q (Typ 116) (dng)
  • Leica Q2 (dng)
  • Leica SL (Typ 601) (dng)
  • Leica V-LUX (Typ 114) (3:2, 4:3, 16:9, 1:1)
  • Nikon Z 6 (14bit-uncompressed, 12bit-uncompressed)
  • Nikon Z 7 (14bit-uncompressed)
  • Olympus E-M1X
  • Olympus TG-6
  • Panasonic DC-G90 (4:3)
  • Panasonic DC-G91 (4:3)
  • Panasonic DC-G95 (4:3)
  • Panasonic DC-G99 (4:3)
  • Panasonic DC-ZS200 (3:2)
  • Panasonic DMC-TX1 (3:2)
  • Phase One P30
  • Sony DSC-RX0M2
  • Sony DSC-RX100M6
  • Sony ILCE-6400
  • Sony ILCE-7RM4
  • White Balance Presets:
  • Leica Q2
  • Nikon D500
  • Nikon Z 7
  • Panasonic DC-LX100M2
  • Sony ILCE-6400
  • Noise Profiles:
  • Leica Q2
  • Nikon D3
  • Nikon D3500
  • Nikon Z 6
  • Nikon Z 7
  • Olympus E-PL8
  • Olympus E-PL9
  • Panasonic DC-LX100M2
  • Sony DSC-RX100M5A
  • Sony ILCE-6400
  • Sony SLT-A35

New in darktable 2.6.3 (Oct 25, 2019)

  • Bugfixes:
  • Source with OpenMP can be compiled with
  • Update skin tone preset on color-zones module
  • Fix compiling with exiv 0.27.2.1
  • Fix file access permissions on macOS Catalina 10.15
  • Fix shift+scroll only scrolling in one direction on macOS
  • Fix picasa, piwigo and facebook support
  • Fix issue on MacOS
  • Changed:
  • Dependencies
  • None.
  • Camera support, compared to 2

New in darktable 2.6.0 (Dec 27, 2018)

  • The Big Ones:
  • new module retouch allowing changes based on image frequency layers
  • new module filmic which can replace the base curve and shadows and highlights
  • new module to handle duplicates in the darkroom with possibility to add a title, create standard or virgin duplicate, delete duplicate and quickly compare with a duplicate
  • new logarithm controls for the tone-curve
  • new mode for the unbreak profile module
  • add mask preview to adjust size, hardness before placing them
  • make it possible to change the cropped area in the perspective correction module
  • the mask blur has been complemented with a guided-filter to fine tune it (this works on RGB and Lab color space).
  • color balance module has two new modes based on ProPhotoRGB and HSL
  • Experimental support for PPC64le architecture (OpenCL support needs to be disabled, -DUSE_OPENCL=OFF)
  • New Features And Changes:
  • search from the map view is now fixed
  • visual rework of the lighttable (color label, image kind, local copy)
  • an option make it possible to display some image information directly on the thumb
  • add optional scrollbars on lighttable, or lighttable and darkroom
  • allow each masks of the clone module to have the opacity adjusted
  • lightroom import module supports the creator, rights, title, description and publisher information.
  • enhance TurboPrint support by displaying the dialogue with all possible options (print cancellation will be fixed in TurboPrint 2.47)
  • new sort filter based on the image's aspect
  • new sort filter based on the image's shutter speed
  • new sort filter based on the image's group
  • new sort filter based on a personalized sorting order (drag&drop on the lighttable view)
  • collection based on the local copy status
  • group image number displayed on the collection module
  • new zoom level at 50%; 400%, 800% and 1600%
  • better support for monochrome RAW
  • add contextual help pointing to the darktable's manual
  • better copy/paste support for multiple instances
  • add support for renaming the module instances
  • add frequency based adjustment for the RAW denoise module
  • add frequency based adjustment for the denoise profile module
  • all widgets should be themable via CSS now
  • add support for configuring the modules layout
  • different way to select hierarchical tags in the collection module (only the actual parent tag, all children or the parent and children)
  • better handling of grouped images by allowing setting stars, color label for the whole group.
  • make it possible to apply a preset to a new module instance using the middle click
  • new script to migrate collection from Capture One Pro
  • Bug fixes:
  • Fix the color pickers behavior in all modules
  • Fix liquify tools switching
  • Many more bugs got fixed
  • Lua:
  • No changes
  • Changed Dependencies:
  • CMake 3.4 is now required
  • In order to compile darktable you now need at least gcc-5.0+/clang-3.9+
  • Minimal clang version was bumped from 3.4+ to 3.9+
  • Packagers are advised to pass -DRAWSPEED_ENABLE_LTO=ON to CMake to enable partial LTO.
  • RawSpeed changes:
  • GoPro '.GPR' raws are now supported via new, fast 'VC-5' parallel decompressor
  • Panasonic's new raw compression ('.RW2', GH5s, G9 cameras) is now supported via new fast, parallel 'Panasonic V5' decompressor
  • Panasonic's old (also '.RW2') raw decompressor got rewritten, re-parallelized
  • Phase One ('.IIQ') decompressor got parallelized
  • Nikon NEF 'lossy after split' raw support was recovered
  • Phase One ('.IIQ') Quadrant Correction is now supported
  • Olympus High-Res (uncompressed) raw support
  • Lot's and lot's and lot's of maintenance, sanitization, cleanups, small rewrites/refactoring.
  • NOTE: Canon '.CR3' raws are NOT supported as of yet.
  • Camera support, compared to 2.4.0:
  • Base Support:
  • Canon EOS 1500D
  • Canon EOS 2000D
  • Canon EOS Rebel T7
  • Canon EOS 3000D
  • Canon EOS 4000D
  • Canon EOS Rebel T100
  • Canon EOS 5D Mark IV (sRaw1, sRaw2)
  • Canon EOS 5DS (sRaw1, sRaw2)
  • Canon EOS 5DS R (sRaw1, sRaw2)
  • Canon PowerShot G1 X Mark III
  • Fujifilm X-A5
  • Fujifilm X-H1 (compressed)
  • Fujifilm X-T100
  • Fujifilm X-T3 (compressed)
  • GoPro FUSION (dng)
  • GoPro HERO5 Black (dng)
  • GoPro HERO6 Black (dng)
  • GoPro HERO7 Black (dng)
  • Hasselblad CFV-50
  • Hasselblad H5D-40
  • Hasselblad H5D-50c
  • Kodak DCS Pro 14nx
  • Kodak DCS520C
  • Kodak DCS760C
  • Kodak EOS DCS 3
  • Nikon COOLPIX P1000 (12bit-uncompressed)
  • Nikon D2Xs (12bit-compressed, 12bit-uncompressed)
  • Nikon D3500 (12bit-compressed)
  • Nikon Z 6 (except uncompressed raws)
  • Nikon Z 7 (except 14-bit uncompressed raw)
  • Olympus E-PL8
  • Olympus E-PL9
  • Olympus SH-2
  • Panasonic DC-FZ80 (4:3)
  • Panasonic DC-G9 (4:3)
  • Panasonic DC-GF9 (4:3)
  • Panasonic DC-GX800 (4:3)
  • Panasonic DC-GX850 (4:3)
  • Panasonic DC-GH5S (4:3, 3:2, 16:9, 1:1)
  • Panasonic DC-GX9 (4:3)
  • Panasonic DC-LX100M2 (4:3, 1:1, 16:9, 3:2)
  • Panasonic DC-TZ200 (3:2)
  • Panasonic DC-TZ202 (3:2)
  • Panasonic DMC-FZ2000 (3:2)
  • Panasonic DMC-FZ2500 (3:2)
  • Panasonic DMC-FZ35 (3:2, 16:9)
  • Panasonic DMC-FZ38 (3:2, 16:9)
  • Panasonic DMC-GX7MK2 (4:3)
  • Panasonic DMC-ZS100 (3:2)
  • Paralenz Dive Camera (chdk)
  • Pentax 645Z
  • Pentax K-1 Mark II
  • Pentax KP
  • Phase One P65+
  • Sjcam SJ6 LEGEND (chdk-b, chdk-c)
  • Sony DSC-HX99
  • Sony DSC-RX0
  • Sony DSC-RX100M5A
  • Sony DSC-RX10M4
  • Sony DSC-RX1RM2
  • Sony ILCE-7M3
  • White Balance Presets:
  • Canon EOS M100
  • Fujifilm X-T3
  • Leaf Credo 40
  • Nikon D3400
  • Nikon D5600
  • Nikon D7500
  • Nikon D850
  • Nikon Z 6
  • Olympus E-M10 Mark III
  • Olympus E-M1MarkII
  • Panasonic DC-G9
  • Panasonic DC-GX9
  • Panasonic DMC-FZ300
  • Sony DSC-RX0
  • Sony DSC-RX100M5
  • Sony DSC-RX100M5A
  • Sony DSC-RX10M3
  • Sony DSC-RX10M4
  • Sony DSC-RX1RM2
  • Sony ILCE-6500
  • Sony ILCE-7M3
  • Sony ILCE-7RM3
  • Noise Profiles:
  • Canon EOS 200D
  • Canon EOS Kiss X9
  • Canon EOS Rebel SL2
  • Canon EOS 750D
  • Canon EOS Kiss X8i
  • Canon EOS Rebel T6i
  • Canon EOS 760D
  • Canon EOS 8000D
  • Canon EOS Rebel T6s
  • Canon EOS 77D
  • Canon EOS 9000D
  • Canon EOS 800D
  • Canon EOS Kiss X9i
  • Canon EOS Rebel T7i
  • Canon EOS M100
  • Canon EOS M6
  • Canon PowerShot G1 X Mark II
  • Canon PowerShot G1 X Mark III
  • Canon PowerShot G9 X
  • Fujifilm X-A5
  • Fujifilm X-E3
  • Fujifilm X-T3
  • Fujifilm X100F
  • Nikon 1 AW1
  • Nikon 1 J3
  • Nikon COOLPIX B700
  • Nikon D5600
  • Nikon D7500
  • Nikon D850
  • Olympus E-M10 Mark III
  • Olympus TG-5
  • Panasonic DC-G9
  • Panasonic DC-GX9
  • Panasonic DMC-FZ35
  • Panasonic DMC-FZ38
  • Panasonic DMC-GF6
  • Panasonic DMC-LX10
  • Panasonic DMC-LX15
  • Panasonic DMC-LX9
  • Panasonic DMC-TZ70
  • Panasonic DMC-TZ71
  • Panasonic DMC-ZS50
  • Pentax K-01
  • Pentax KP
  • Samsung NX1
  • Sony DSC-RX100M4
  • Sony DSC-RX10M3
  • Sony ILCE-7M3
  • Translations:
  • Catalan
  • Dutch
  • Finnish
  • French
  • German
  • Hungarian
  • Japanese
  • Norwegian Bokmål
  • Portuguese
  • Russian
  • Slovenian

New in darktable 2.6.0 RC 1 (Dec 9, 2018)

  • The Big Ones:
  • new module retouch allowing changes based on image frequency layers
  • new module filmic which can replace the base curve and shadows and highlights
  • new module to handle duplicates in the darkroom with possibility to add a title, create standard or virgin duplicate, delete duplicate and quickly compare with a duplicate
  • new logarithm controls for the tone-curve
  • new mode for the unbreak profile module
  • add mask preview to adjust size, hardness before placing them
  • make it possible to change the cropped area in the perspective correction module
  • the mask blur has been complemented with a guided-filter to fine tune it (this works on RGB and Lab color space).
  • color balance module has two new modes based on ProPhotoRGB and HSL
  • Experimental support for PPC64le architecture (OpenCL support needs to be disabled, -DUSE_OPENCL=OFF)
  • New Features And Changes:
  • search from the map view is now fixed
  • visual rework of the lighttable (color label, image kind, local copy)
  • an option make it possible to display some image information directly on the thumb
  • add optional scrollbars on lighttable, or lighttable and darkroom
  • allow each masks of the clone module to have the opacity adjusted
  • lightroom import module supports the creator, rights, title, description and publisher information.
  • enhance TurboPrint support by displaying the dialogue with all possible options
  • new sort filter based on the image's aspect
  • new sort filter based on the image's shutter speed
  • new sort filter based on the image's group
  • new sort filter based on a personalized sorting order (drag&drop on the lighttable view)
  • collection based on the local copy status
  • group image number displayed on the collection module
  • new zoom level at 50%; 400%, 800% and 1600%
  • better support for monochrome RAW
  • add contextual help pointing to the darktable's manual
  • better copy/paste support for multiple instances
  • add support for renaming the module instances
  • add frequency based adjustment for the RAW denoise module
  • add frequency based adjustment for the denoise profile module
  • all widgets should be themable via CSS now
  • add support for configuring the modules layout
  • different way to select hierarchical tags in the collection module (only the actual parent tag, all children or the parent and children)
  • better handling of grouped images by allowing setting stars, color label for the whole group.
  • make it possible to apply a preset to a new module instance using the middle click
  • new script to migrate collection from Capture One Pro
  • Bug fixes:
  • Fix the color pickers behavior in all modules
  • Fix liquify tools switching
  • Many more bugs got fixed
  • Lua:
  • No changes
  • Changed Dependencies:
  • CMake 3.4 is now required
  • In order to compile darktable you now need at least gcc-5.0+/clang-3.9+
  • Minimal clang version was bumped from 3.4+ to 3.9+
  • Packagers are advised to pass -DRAWSPEED_ENABLE_LTO=ON to CMake to enable partial LTO.
  • RawSpeed changes:
  • GoPro '.GPR' raws are now supported via new, fast 'VC-5' parallel decompressor
  • Panasonic's new raw compression ('.RW2', GH5s, G9 cameras) is now supported via new fast, parallel 'Panasonic V5' decompressor
  • Panasonic's old (also '.RW2') raw decompressor got rewritten, re-parallelized
  • Phase One ('.IIQ') decompressor got parallelized
  • Nikon NEF 'lossy after split' raw support was recovered
  • Phase One ('.IIQ') Quadrant Correction is now supported
  • Olympus High-Res (uncompressed) raw support
  • Lot's and lot's and lot's of maintenance, sanitization, cleanups, small rewrites/refactoring.
  • NOTE: Canon '.CR3' raws are NOT supported as of yet.
  • Camera support, compared to 2.4.0:
  • Base Support:
  • Canon EOS 1500D
  • Canon EOS 2000D
  • Canon EOS Rebel T7
  • Canon EOS 3000D
  • Canon EOS 4000D
  • Canon EOS Rebel T100
  • Canon EOS 5D Mark IV (sRaw1, sRaw2)
  • Canon EOS 5DS (sRaw1, sRaw2)
  • Canon EOS 5DS R (sRaw1, sRaw2)
  • Canon PowerShot G1 X Mark III
  • Fujifilm X-A5
  • Fujifilm X-H1 (compressed)
  • Fujifilm X-T100
  • Fujifilm X-T3 (compressed)
  • GoPro FUSION (dng)
  • GoPro HERO5 Black (dng)
  • GoPro HERO6 Black (dng)
  • GoPro HERO7 Black (dng)
  • Hasselblad CFV-50
  • Hasselblad H5D-40
  • Hasselblad H5D-50c
  • Kodak DCS Pro 14nx
  • Kodak DCS520C
  • Kodak DCS760C
  • Kodak EOS DCS 3
  • Nikon COOLPIX P1000 (12bit-uncompressed)
  • Nikon D2Xs (12bit-compressed, 12bit-uncompressed)
  • Nikon D3500 (12bit-compressed)
  • Nikon Z 6 (except uncompressed raws)
  • Nikon Z 7 (except 14-bit uncompressed raw)
  • Olympus E-PL8
  • Olympus E-PL9
  • Olympus SH-2
  • Panasonic DC-FZ80 (4:3)
  • Panasonic DC-G9 (4:3)
  • Panasonic DC-GH5S (4:3, 3:2, 16:9, 1:1)
  • Panasonic DC-GX9 (4:3)
  • Panasonic DC-LX100M2 (4:3, 1:1, 16:9, 3:2)
  • Panasonic DC-TZ200 (3:2)
  • Panasonic DC-TZ202 (3:2)
  • Panasonic DMC-FZ2000 (3:2)
  • Panasonic DMC-FZ2500 (3:2)
  • Panasonic DMC-FZ35 (3:2, 16:9)
  • Panasonic DMC-FZ38 (3:2, 16:9)
  • Panasonic DMC-GX7MK2 (4:3)
  • Panasonic DMC-ZS100 (3:2)
  • Paralenz Dive Camera (chdk)
  • Pentax 645Z
  • Pentax K-1 Mark II
  • Pentax KP
  • Phase One P65+
  • Sjcam SJ6 LEGEND (chdk-b, chdk-c)
  • Sony DSC-HX99
  • Sony DSC-RX0
  • Sony DSC-RX100M5A
  • Sony DSC-RX10M4
  • Sony DSC-RX1RM2
  • Sony ILCE-7M3
  • White Balance Presets:
  • Canon EOS M100
  • Leaf Credo 40
  • Nikon D3400
  • Nikon D5600
  • Nikon D7500
  • Nikon D850
  • Nikon Z 6
  • Olympus E-M10 Mark III
  • Olympus E-M1MarkII
  • Panasonic DC-G9
  • Panasonic DC-GX9
  • Panasonic DMC-FZ300
  • Sony DSC-RX0
  • Sony ILCE-6500
  • Sony ILCE-7M3
  • Sony ILCE-7RM3
  • Noise Profiles:
  • Canon EOS 200D
  • Canon EOS Kiss X9
  • Canon EOS Rebel SL2
  • Canon EOS 750D
  • Canon EOS Kiss X8i
  • Canon EOS Rebel T6i
  • Canon EOS 760D
  • Canon EOS 8000D
  • Canon EOS Rebel T6s
  • Canon EOS 77D
  • Canon EOS 9000D
  • Canon EOS 800D
  • Canon EOS Kiss X9i
  • Canon EOS Rebel T7i
  • Canon EOS M100
  • Canon EOS M6
  • Canon PowerShot G1 X Mark II
  • Canon PowerShot G1 X Mark III
  • Canon PowerShot G9 X
  • Fujifilm X-T3
  • Fujifilm X100F
  • Nikon COOLPIX B700
  • Nikon D5600
  • Nikon D7500
  • Nikon D850
  • Olympus E-M10 Mark III
  • Olympus TG-5
  • Panasonic DC-G9
  • Panasonic DC-GX9
  • Panasonic DMC-FZ35
  • Panasonic DMC-FZ38
  • Panasonic DMC-GF6
  • Panasonic DMC-LX10
  • Panasonic DMC-LX15
  • Panasonic DMC-LX9
  • Panasonic DMC-TZ70
  • Panasonic DMC-TZ71
  • Panasonic DMC-ZS50
  • Pentax K-01
  • Pentax KP
  • Samsung NX1
  • Sony DSC-RX100M4
  • Sony DSC-RX10M3
  • Sony ILCE-7M3
  • Translations:
  • Afrikaans
  • Czech
  • German
  • Finnish
  • French
  • Galician
  • Hebrew
  • Hungarian
  • Italian
  • Norwegian Bokmål
  • Nepal
  • Dutch
  • Portuguese
  • Romanian
  • Russian
  • Slovenian
  • Albanian
  • Thai
  • Chinese

New in darktable 2.4.4 (Jun 6, 2018)

  • New Features:
  • Added 50% zoom option in darkroom mode to the navigation dropdown
  • perspective correction: usability improvement – allow setting the radius when (de)selecting lines
  • Bugfixes:
  • Fix selecting drives in the import dialog on Windows by bundling a patched glib
  • Add some space between checkbox and label in color picker
  • OpenCL: better readability of debug output on memory usage
  • Levels: catch an edge case where float != int
  • Fix the alignment in a tooltip in lens correction
  • Local contrast: Reset strength slider to 120% when double clicked
  • Drop unused clone masks when loading xmp files
  • Remove all sub masks when clearing cloning masks
  • darktable-cltest: do not print summary statistics on OpenCL usage
  • Perspective correction: take aspect parameter into account when judging on neutral settings
  • Haze removal: fix tiled processing
  • Fix install on Windows due to GraphicsMagick's versioned filenames
  • PPM: Handle byte order when loading files
  • Fix #12165: Don't try to show dialog without gui
  • Fix an out-of-bounds memory access
  • Tools: Fix typo in darktable-gen-noiseprofile that made it unusable
  • MacOS package: point gettext to correct localedir

New in darktable 2.4.3 (Apr 24, 2018)

  • New Features:
  • Support for tags and ratings in the watermark module
  • Read Xmp.exif.DateTimeOriginal from XMP sidecars
  • Build and install noise tools
  • Add a script for converting .dtyle to an .xmp
  • Bugfixes:
  • Don't create unneeded folders during export in some cases
  • When collecting by tags, don't select subtags
  • Fix language selection on OSX
  • Fix a crash while tethering
  • Camera support, compared to 2.4.2:
  • Warning: support for Nikon NEF 'lossy after split' raws was unintentionally broken due to the lack of such samples. Please see this post for more details. If you have affected raws, please contribute samples!
  • Base Support
  • Fujifilm X-H1 (compressed):
  • Kodak EOS DCS 3
  • Olympus E-PL9
  • Panasonic DC-GX9 (4:3)
  • Sony DSC-RX1RM2
  • Sony ILCE-7M3
  • White Balance Presets:
  • Sony ILCE-7M3
  • Noise Profiles:
  • Canon PowerShot G1 X Mark III
  • Nikon D7500
  • Sony ILCE-7M3

New in darktable 2.4.1 (Jan 22, 2018)

  • New Features:
  • Allow to select the GUI language in the preferences
  • Add a filter rule to the collect module to find locally copied images
  • Add favourite toggle to darkroom modules' right click popup
  • Allow blending/masking in the hot pixels module
  • Add keyboard shortcuts to zoom and pan an image in darkroom. Panning uses the arrow keys, zooming defaults to ctrl- and ctrl+. Use alt and ctrl to change the step size of panning.
  • Some minor speedups in the grain module
  • Handling stdout on Windows: do not redirect stdout for simple command line arguments (--help and --version)
  • On Windows, show the location of the log file in the help message
  • Enable searching in the more modules list – click into the list to give focus to it, then start typing. The default GTK shortcut ctrl-f doesn't work as it's used for filmstrip already
  • Add a debug print when compiling OpenCL kernels
  • Bugfixes:
  • Use the configured overwrite color profile when exporting from Lua – this broke GIMP integration
  • Support presets with < in their name
  • Fix export to non-existing path with as the path separator on Windows
  • Don't insist on the db being locked when it doesn't even exist
  • Don't touch the mix slider when resetting the curve in color zones
  • Fix a bug in the exposure module that would only allow corrections of up to 10 stops
  • Fix custom shortcuts with shift modifier
  • Properly ellipsize text in the recently used collections list
  • Fix exported galeries with filenames containing a '
  • Fix finding mipmaps cache folder in purge_from_cache.sh script
  • Fix a crash in the recently used collections list due to a broken config file
  • Set the sqlite threading mode to Serialized
  • Fix old export presets using OpenEXR
  • Fix building with clang on Windows
  • Changed Dependencies:
  • iso-codes version 3.66 or newer is suggested for a nicer list of translations in the preferences.
  • The Windows installer comes with an updated libexiv2 so TIFF exports should be much faster now
  • Camera support, compared to 2.4.0:
  • Warning: support for Nikon NEF 'lossy after split' raws was unintentionally broken due to the lack of such samples. Please see this post for more details. If you have affected raws, please contribute samples!
  • Base Support:
  • Panasonic DC-G9 (4:3)
  • Paralenz Dive Camera (chdk)
  • Pentax KP
  • Sjcam SJ6 LEGEND (chdk-b, chdk-c)
  • White Balance Presets:
  • Leaf Credo 40
  • Nikon D3400
  • Olympus E-M1MarkII
  • Panasonic DC-G9
  • Sony ILCE-7RM3
  • Noise Profiles:
  • Canon EOS 750D
  • Canon EOS Kiss X8i
  • Canon EOS Rebel T6i
  • Canon EOS 77D
  • Canon EOS 9000D
  • Canon EOS M100
  • Canon EOS M6
  • Sony DSC-RX100M4
  • YI TECHNOLOGY M1
  • Translations:
  • Czech
  • Dutch
  • French
  • German
  • Hebrew
  • Hungarian
  • Italian
  • Slovenian

New in darktable 2.4.0 (Dec 27, 2017)

  • The Big Ones:
  • A new module for haze removal
  • The local contrast module can now be pushed much further, it also got a new local laplacian mode
  • Add undo support for masks and more intelligent grouping of undo steps
  • Blending now allows to display individual channels using false colors
  • darktable now supports loading Fujifilm compressed RAFs
  • darktable now supports loading floating point HDR DNGs as written by HDRMERGE
  • We also added channel specific blend modes for Lab and RGB color spaces
  • The base curve module allows for more control of the exposure fusion feature using the newly added bias slider
  • The tonecurve module now supports auto colour adjustment in RGB
  • Add absolute color input as an option to the color look up table module
  • A new X-Trans demosaicing algorithm, Frequency Domain Chroma, was implemented.
  • You can now choose from pre-defined scheduling profiles for OpenCL
  • Speaking of OpenCL, darktable now allows to force-use OpenCL for a specific pixelpipe
  • XMP sidecar files are no longer written to disk when the content didn't actually change. That mostly helps with network storage and backup systems that use files' time stamps
  • New Features And Changes:
  • Show a dialog window that tells when locking the database/library failed
  • Don't shade the whole region on the map when searching for a location. Instead just draw a border around it.
  • Also in map mode: Clear the search list and map indicators when resetting the search module.
  • With OsmGPSMap newer than version 1.1.0 (i.e., anything released after that OsmGPSMap version) the map will show copyright info.
  • Running jobs with a progressbar (mostly import and export) will show that progress bar ontop the window entry in your task bar – if the system supports it. It should work on GNOME, KDE and Windows at least.
  • Add bash like string replacement for variables (export, watermark, session settings)
  • Add a preferences option to ask before removing empty dirs
  • The "colorbalance" module got a lot faster, thanks to SSE optimized code
  • Make gradient sliders a little more colorful
  • Make PNG compression level used for exporting configurable
  • On OSX, load single images from command line or via drag&drop in darkroom mode
  • Add an option to omit the intermediate tag hierarchy in exported files and only add the last level
  • In the watermark module, sort the list of SVG files and omit the file extension
  • Support XYZ as a proofing profile
  • Local contrast now got a new slider to set the midtone range
  • darktable got two new helper scripts (those are not installed by default, grab them from the sources)
  • One to purge thumbnails that no longer have an associated image in the database,
  • and a second script that uses inotify to watch a folder for new files to open them in a running darktable instance.
  • In the curve editors of base curve and tone curve you can now delete nodes with a right click and see coordinates of nodes while editing. Note that you can use keyboard modifiers ctrl and shift to change the precision of your changes
  • Creating a new instance of a module can now be done with a quick click of the middle mouse button on the multi-instance icon
  • New darktable installations on computers with more than 8 Gb of memory will now by default use half of that per module
  • Several background colors and the brush color are now configurable in the CSS
  • Some new cameras can bump the ISO level to insane highs. We try to follow as good as we can by no longer limiting it to 51200 in the GUI
  • Base curve and the highlights module now support multiple instances and use blending and masks
  • Having the 1 key toggle between 1 and 0 stars wasn't very popular with many people. You can disable that extra feature and have it behave like the other rating shortcuts now
  • You can decide if you want to be asked before resetting the history stacks of images from the lighttable
  • The grain module was slightly changed to have a more pleasing, photographic-paper like appearance
  • Using the color look up table module you can now convert your images to monochrome, honoring the Helmholtz-Kohlrausch effect
  • Support basic import of Lightroom 7 settings
  • Change the styling of insensitive bauhaus widgets
  • Don't hide the mode combobox in the exposure module, just disable it
  • Read primaries and whitepoint from .hdr files and default to those as the input color profile
  • Some more small improvements were made
  • Bug fixes:
  • Fix the problem with rating images by accident when moving the mouse while typing an image size in the export module
  • Fix several oddities in folder and tag mode of the collect module
  • Print mode's color profile settings no longer interact with the export module
  • Update the style lists when importing a style
  • Fix some bugs with multiple module instances used in a style
  • On OSX only the main window should be fullscreen, not the popups
  • Some speedups with VERY big libraries or having A LOT OF tags
  • Significantly speed up tagging many images
  • Fix searching locations using OpenStreetMap
  • Fix partial copies of large files in "import from camera"
  • Fix a crash in the import dialog when using Lua to add widgets there
  • Fix some false-positive warnings about another running darktable instance and it having locked the databases
  • No longer switch to the favourite modules group when duplicating one of its modules
  • Fix loading of XYZ files
  • Fix Lab export when the profile was set from the lighttable
  • Create temporary snapshot files with mode 0600 to stop other people looking at them
  • Fix several bugs with Wayland. However, there are still issues, so darktable will prefer XWayland
  • Google deprecated the Picasa Web API so it's no longer possible to create G+ albums
  • Fix the default for sliders with target not being "red" in the channel mixer
  • Fix the removal of directories
  • Make the escape key cancel history dialogs
  • Block keyboard accels when editing camera controls
  • Properly delete XMP sidecars
  • Make sure that the rating set in darktable is used for the exported file, not something set inside the raw file
  • Don't re-write all XMP files when detaching a tag
  • Sync XMPs when a tag is removed from the database
  • Sync XMPs after a tag is attached/detached via the Lua API
  • Bail out of darktable-cli when the XMP file is not readable
  • Show ratings on zoomable lighttable without a delay
  • Rely on CUPS color management when printing without configuring any color profile in darktable
  • Fix spurious segfault in local contrast
  • Make calls to exiv2's readMetadata thread safe to not crash randomly
  • Properly read Lightroom XMPs on systems with , as the decimal separator
  • Fix setting the PNG bit depth from the gui
  • Many more bugs got fixed
  • Lua:
  • darktable now uses Lua 5.3. The bundled copy got updated accordingly
  • Add dt.print_log. It's like print_error but without the ERROR prefix
  • Reorder callback parameters for intermediate export image: add the actual image to the parameters of the event
  • Call lua post-import-image event synchronously
  • Add darktable.configuration.running_os to detect the OS darktable is running on
  • New widget type: section_label, adds a label which looks like a section change
  • Changed Dependencies:
  • CMake 3.1 is now required
  • In order to compile darktable you now need at least gcc-5.0+/clang-3.4+
  • ZLIB is now required for the DNG Deflate compressed raw support
  • darktable now uses Lua 5.3
  • Camera support, compared to 2.2.0:
  • Base Support:
  • Canon EOS 200D
  • Canon EOS Kiss X9
  • Canon EOS Rebel SL2
  • Canon EOS 6D Mark II (sRaw1, sRaw2)
  • Canon EOS 77D
  • Canon EOS 9000D
  • Canon EOS 800D
  • Canon EOS Kiss X9i
  • Canon EOS Rebel T7i
  • Canon EOS M100
  • Canon EOS M5
  • Canon EOS M6
  • Canon PowerShot G9 X Mark II
  • Canon PowerShot SX40 HS (dng)
  • Fujifilm GFX 50S (compressed)
  • Fujifilm X-A3
  • Fujifilm X-E2S
  • Fujifilm X-E3 (compressed)
  • Fujifilm X-Pro2 (compressed)
  • Fujifilm X-T2 (compressed)
  • Fujifilm X-T20 (compressed)
  • Fujifilm X100F (compressed)
  • GITUP GIT2P (chdk-a, chdk-b)
  • Kodak EasyShare Z980
  • LG D855 (dng)
  • LG H815 (dng)
  • LG Nexus 5X (dng)
  • LG US996 (dng)
  • LG VS995 (dng)
  • Leica D-LUX (Typ 109) (4:3, 3:2, 16:9, 1:1)
  • Leica X2 (dng)
  • Nikon COOLPIX B700 (12bit-uncompressed)
  • Nikon D500 (14bit-uncompressed, 12bit-uncompressed)
  • Nikon D5600 (12bit-compressed, 12bit-uncompressed, 14bit-compressed, 14bit-uncompressed)
  • Nikon D7500 (12bit-compressed, 14bit-compressed)
  • Nikon D850 (12bit-compressed, 12bit-uncompressed, 14bit-compressed, 14bit-uncompressed)
  • Nikon LS-5000 (dng)
  • Nokia Lumia 1020 (dng)
  • Olympus E-M10 Mark III
  • Olympus E-M1MarkII
  • Olympus TG-5
  • Panasonic DC-FZ82 (4:3)
  • Panasonic DMC-FZ80 (4:3)
  • Panasonic DMC-FZ85 (4:3)
  • Panasonic DC-GH5 (4:3)
  • Panasonic DC-FZ91 (4:3)
  • Panasonic DC-FZ92 (4:3)
  • Panasonic DC-FZ93 (4:3)
  • Panasonic DC-TZ90 (4:3)
  • Panasonic DC-ZS70 (4:3)
  • Panasonic DMC-FZ330 (4:3)
  • Panasonic DMC-GF6 (16:9, 3:2, 1:1)
  • Panasonic DMC-TZ61 (4:3, 3:2, 1:1, 16:9)
  • Panasonic DMC-ZS40 (4:3, 3:2, 1:1, 16:9)
  • Panasonic DMC-TZ80 (4:3)
  • Panasonic DMC-TZ81 (4:3)
  • Panasonic DMC-TZ85 (4:3)
  • Panasonic DMC-ZS60 (4:3)
  • Pentax K-5 (dng)
  • Pentax K-r (dng)
  • Pentax K10D (dng)
  • Phase One IQ140
  • Samsung G920F
  • Samsung G935F
  • Samsung GX10
  • Sony ILCE-6500
  • Sony ILCE-7RM3
  • Sony ILCE-9
  • White Balance Presets:
  • Canon EOS 6D Mark II
  • Fujifilm X-T20
  • Fujifilm X100F
  • Nikon 1 AW1
  • Nikon Coolpix A
  • Panasonic DMC-GX80
  • Panasonic DMC-GX85
  • Panasonic DMC-TZ100
  • Panasonic DMC-TZ101
  • Panasonic DMC-TZ110
  • Panasonic DMC-ZS110
  • Pentax K-3 II
  • Noise Profiles:
  • Canon EOS 1300D
  • Canon EOS Kiss X80
  • Canon EOS Rebel T6
  • Canon EOS 5D Mark IV
  • Canon EOS 6D Mark II
  • Canon EOS M5
  • Canon PowerShot G16
  • Canon PowerShot G3 X
  • Canon PowerShot G7 X Mark II
  • Canon PowerShot G9 X Mark II
  • Fujifilm X-M1
  • Fujifilm X-Pro1
  • Fujifilm X-Pro2
  • Fujifilm X-T20
  • Leica X2
  • Nikon Coolpix A
  • Nikon D2X
  • Nikon D3000
  • Nikon D3400
  • Nikon D4
  • Nikon D500
  • Olympus E-M1MarkII
  • Olympus E-P5
  • Panasonic DMC-FZ200
  • Panasonic DMC-FZ300
  • Panasonic DMC-G7
  • Panasonic DMC-G70
  • Panasonic DMC-G8
  • Panasonic DMC-G80
  • Panasonic DMC-G81
  • Panasonic DMC-G85
  • Panasonic DMC-GX80
  • Panasonic DMC-GX85
  • Panasonic DMC-LX100
  • Panasonic DMC-TZ100
  • Panasonic DMC-TZ101
  • Panasonic DMC-TZ110
  • Panasonic DMC-ZS110
  • Pentax K-70
  • Sony DSC-RX100M5
  • Sony ILCA-68
  • Sony ILCE-5000
  • Sony ILCE-6500
  • Sony ILCE-7RM3
  • Translations:
  • Catalan
  • Czech
  • Danish
  • Dutch
  • French
  • German
  • Greek
  • Hebrew
  • Hungarian
  • Italian
  • Japanese
  • Polish
  • Russian
  • Slovak
  • Slovenian
  • Spanish
  • Swedish
  • Ukrainian

New in darktable 2.4.0 RC 2 (Dec 17, 2017)

  • changes since rc1:
  • Fix a bug in haze removal that resulted in black areas in the exported image
  • Support Sony ILCE-7RM3
  • Make calls to exiv2's readMetadata thread safe to not crash randomly
  • Don't hide the mode combobox in the exposure module, just disable it
  • Change the styling of insensitive bauhaus widgets
  • Fix spurious segfault in local contrast
  • Don't show an error popup on Windows when the CD drive is empty
  • and the changelog as compared to 2.2.0 can be found below:
  • Some of the fixes might have been backported to the stable 2.2.x series already.
  • The maintainership of the RawSpeed library was transferred to the darktable project. The work on code cleanup, hardening, modernization, simplification and testing is ongoing.
  • Well over 2 thousand commits to darktable+rawspeed since 2.2.0
  • 244 pull requests handled
  • 320+ issues closed
  • Updated user manual is coming soon™

New in darktable 2.4.0 RC 1 (Dec 12, 2017)

  • changes since rc0:
  • noise profile for Nikon D4
  • Phase One IQ140 support
  • OSX packaging fixes
  • Lightroom 7 import fixes
  • Some fixes for sliders and comboboxen and grabbing the keyboard focus
  • No longer use colored sliders in the white balance module – they confused people
  • Update Catalan translation
  • Update Hungarian translation
  • Fix OpenCL on OSX
  • Bail out of darktable-cli when the XMP file is not readable
  • Fix timezone selection for geotagging on Windows
  • Canon EOS M100 supported
  • Show ratings on zoomable lighttable without a delay
  • Rely on CUPS color management when printing without configuring any color profile in darktable
  • and the changelog as compared to 2.2.0 can be found below. Some of the fixes might have been backported to the stable 2.2.x series already.
  • The maintainership of the RawSpeed library was transferred to the darktable project. The work on code cleanup, hardening, modernization, simplification and testing is ongoing.
  • Well over 2 thousand commits to darktable+rawspeed since 2.2.0
  • 244 pull requests handled
  • 320+ issues closed
  • Updated user manual is coming soon™
  • Hell Froze Over:
  • As you might have read on our news post we finally ported darktable to Windows and intend to support it in the future. At the moment it's still lacking a few features (for example there is not printing support), has a few limitations (tethering requires special drivers to be installed) and comes with its own set of bugs. But overall we are confident that it's quite usable already and hope you will enjoy it. A very special thanks goes to Peter Budai who finally convinced us to agree to the port and who did most of the work.
  • The Big Ones:
  • A new module for haze removal
  • The local contrast module can now be pushed much further, it also got a new local laplacian mode
  • Add undo support for masks and more intelligent grouping of undo steps
  • Blending now allows to display individual channels using false colors
  • darktable now supports loading Fujifilm compressed RAFs
  • darktable now supports loading floating point HDR DNGs as written by HDRMERGE
  • We also added channel specific blend modes for Lab and RGB color spaces
  • The base curve module allows for more control of the exposure fusion feature using the newly added bias slider
  • The tonecurve module now supports auto colour adjustment in RGB
  • Add absolute color input as an option to the color look up table module
  • A new X-Trans demosaicing algorithm, Frequency Domain Chroma, was implemented.
  • You can now choose from pre-defined scheduling profiles for OpenCL
  • Speaking of OpenCL, darktable now allows to force-use OpenCL for a specific pixelpipe
  • Xmp sidecar files are no longer written to disk when the content didn't actually change. That mostly helps with network storage and backup systems that use files' time stamps
  • New Features And Changes:
  • Show a dialog window that tells when locking the database/library failed
  • Don't shade the whole region on the map when searching for a location. Instead just draw a border around it.
  • Also in map mode: Clear the search list and map indicators when resetting the search module.
  • With OsmGPSMap newer than version 1.1.0 (i.e., anything released after that OsmGPSMap version) the map will show copyright info.
  • Running jobs with a progressbar (mostly import and export) will show that progress bar ontop the window entry in your task bar – if the system supports it. It should work on GNOME, KDE and Windows at least.
  • Add bash like string replacement for variables (export, watermark, session settings).
  • Add a preferences option to ask before removing empty dirs
  • The "colorbalance" module got a lot faster, thanks to SSE optimized code
  • Make gradient sliders a little more colorful
  • Make PNG compression level used for exporting configurable
  • On OSX, load single images from command line or via drag&drop in darkroom mode
  • Add an option to omit the intermediate tag hierarchy in exported files and only add the last level
  • In the watermark module, sort the list of SVG files and omit the file extension
  • Support XYZ as a proofing profile
  • Local contrast now got a new slider to set the midtone range
  • darktable got two new helper scripts (those are not installed by default, grab them from the sources): One to purge thumbnails that no longer have an associated image in the database, and a second script that uses inotify to watch a folder for new files to open them in a running darktable instance.
  • In the curve editors of base curve and tone curve you can now delete nodes with a right click and see coordinates of nodes while editing. Note that you can use keyboard modifiers ctrl and shift to change the precision of your changes
  • Creating a new instance of a module can now be done with a quick click of the middle mouse button on the multi-instance icon
  • New darktable installations on computers with more than 8 Gb of memory will now by default use half of that per module
  • Several background colors and the brush color are now configurable in the CSS
  • Some new cameras can bump the ISO level to insane highs. We try to follow as good as we can by no longer limiting it to 51200 in the GUI
  • Base curve and the highlights module now support multiple instances and use blending and masks
  • Having the 1 key toggle between 1 and 0 stars wasn't very popular with many people. You can disable that extra feature and have it behave like the other rating shortcuts now
  • You can decide if you want to be asked before resetting the history stacks of images from the lighttable
  • The grain module was slightly changed to have a more pleasing, photographic-paper like appearance
  • Using the color look up table module you can now convert your images to monochrome, honoring the Helmholtz-Kohlrausch effect
  • Some more small improvements were made
  • Support basic import of Lightroom 7 settings
  • Bugfixes:
  • Fix the problem with rating images by accident when moving the mouse while typing an image size in the export module
  • Fix several oddities in folder and tag mode of the collect module.
  • Print mode's color profile settings no longer interact with the export module
  • Update the style lists when importing a style
  • Fix some bugs with multiple module instances used in a style
  • On OSX only the main window should be fullscreen, not the popups
  • Some speedups with VERY big libraries or having A LOT OF tags
  • Significantly speed up tagging many images
  • Fix searching locations using OpenStreetMap
  • Fix partial copies of large files in "import from camera"
  • Fix a crash in the import dialog when using Lua to add widgets there
  • Fix some false-positive warnings about another running darktable instance and it having locked the databases
  • No longer switch to the favourite modules group when duplicating one of its modules
  • Fix loading of XYZ files
  • Fix Lab export when the profile was set from the lighttable
  • Create tmp snapshot files with mode 0600 to stop other people looking at them
  • Fix several bugs with Wayland. However, there are still issues, so darktable will prefer XWayland
  • Google deprecated the Picasa Web API so it's no longer possible to create G+ albums
  • Fix the default for sliders with target not being "red" in the channel mixer
  • Fix the removing of directories
  • Make the escape key cancel history dialogs
  • Block keyboard accels when editing camera controls
  • Properly delete XMP sidecars
  • Make sure that the rating set in darktable is used for the exported file, not something set inside the raw file
  • Don't re-write all XMP files when detaching a tag
  • Sync XMPs when a tag is removed from the database
  • Sync XMPs after a tag is attached/detached via the Lua API
  • Bail out of darktable-cli when the XMP file is not readable
  • Show ratings on zoomable lighttable without a delay
  • Rely on CUPS color management when printing without configuring any color profile in darktable
  • Many more bugs got fixed
  • Lua:
  • darktable now uses Lua 5.3. The bundled copy got updated accordingly
  • Add dt.print_log. It's like print_error but without the ERROR prefix
  • Reorder callback parameters for intermediate export image: add the actual image to the parameters of the event
  • Call lua post-import-image event synchronously
  • Add darktable.configuration.running_os to detect the OS darktable is running on
  • New widget type: section_label, adds a label which looks like a section change
  • Changed Dependencies:
  • CMake 3.1 is now required.
  • In order to compile darktable you now need at least gcc-4.9+/clang-3.4+, and gcc-5.0+ is highly recommended.
  • ZLIB is now required for the DNG Deflate compressed raw support.
  • darktable now uses Lua 5.3
  • Camera support, compared to 2.2.0:
  • Warning: support for Nikon NEF 'lossy after split' raws was unintentionally broken due to the lack of such samples. Please see this post for more details. If you have affected raws, please contribute samples!
  • Base Support:
  • Canon EOS 200D
  • Canon EOS Kiss X9
  • Canon EOS Rebel SL2
  • Canon EOS 6D Mark II (sRaw1, sRaw2)
  • Canon EOS 77D
  • Canon EOS 9000D
  • Canon EOS 800D
  • Canon EOS Kiss X9i
  • Canon EOS Rebel T7i
  • Canon EOS M100
  • Canon EOS M5
  • Canon EOS M6
  • Canon PowerShot G9 X Mark II
  • Canon PowerShot SX40 HS (dng)
  • Fujifilm GFX 50S (compressed)
  • Fujifilm X-A3
  • Fujifilm X-E2S
  • Fujifilm X-E3 (compressed)
  • Fujifilm X-Pro2 (compressed)
  • Fujifilm X-T2 (compressed)
  • Fujifilm X-T20 (compressed)
  • Fujifilm X100F (compressed)
  • GITUP GIT2P (chdk-a, chdk-b)
  • Kodak EasyShare Z980
  • LG D855 (dng)
  • LG H815 (dng)
  • LG Nexus 5X (dng)
  • LG US996 (dng)
  • LG VS995 (dng)
  • Leica D-LUX (Typ 109) (4:3, 3:2, 16:9, 1:1)
  • Leica X2 (dng)
  • Nikon COOLPIX B700 (12bit-uncompressed)
  • Nikon D500 (14bit-uncompressed, 12bit-uncompressed)
  • Nikon D5600 (12bit-compressed, 12bit-uncompressed, 14bit-compressed, 14bit-uncompressed)
  • Nikon D7500 (12bit-compressed, 14bit-compressed)
  • Nikon D850 (12bit-compressed, 12bit-uncompressed, 14bit-compressed, 14bit-uncompressed)
  • Nikon LS-5000 (dng)
  • Nokia Lumia 1020 (dng)
  • Olympus E-M10 Mark III
  • Olympus E-M1MarkII
  • Olympus TG-5
  • Panasonic DC-FZ82 (4:3)
  • Panasonic DMC-FZ80 (4:3)
  • Panasonic DMC-FZ85 (4:3)
  • Panasonic DC-GH5 (4:3)
  • Panasonic DC-FZ91 (4:3)
  • Panasonic DC-FZ92 (4:3)
  • Panasonic DC-FZ93 (4:3)
  • Panasonic DC-TZ90 (4:3)
  • Panasonic DC-ZS70 (4:3)
  • Panasonic DMC-FZ330 (4:3)
  • Panasonic DMC-GF6 (16:9, 3:2, 1:1)
  • Panasonic DMC-TZ61 (4:3, 3:2, 1:1, 16:9)
  • Panasonic DMC-ZS40 (4:3, 3:2, 1:1, 16:9)
  • Panasonic DMC-TZ80 (4:3)
  • Panasonic DMC-TZ81 (4:3)
  • Panasonic DMC-TZ85 (4:3)
  • Panasonic DMC-ZS60 (4:3)
  • Pentax K-5 (dng)
  • Pentax K-r (dng)
  • Pentax K10D (dng)
  • Phase One IQ140
  • Samsung G920F
  • Samsung G935F
  • Samsung GX10
  • Sony ILCE-6500
  • Sony ILCE-9
  • White Balance Presets:
  • Canon EOS 6D Mark II
  • Fujifilm X-T20
  • Fujifilm X100F
  • Nikon 1 AW1
  • Nikon Coolpix A
  • Panasonic DMC-GX80
  • Panasonic DMC-GX85
  • Panasonic DMC-TZ100
  • Panasonic DMC-TZ101
  • Panasonic DMC-TZ110
  • Panasonic DMC-ZS110
  • Pentax K-3 II
  • Noise Profiles:
  • Canon EOS 1300D
  • Canon EOS Kiss X80
  • Canon EOS Rebel T6
  • Canon EOS 5D Mark IV
  • Canon EOS 6D Mark II
  • Canon EOS M5
  • Canon PowerShot G16
  • Canon PowerShot G3 X
  • Canon PowerShot G7 X Mark II
  • Canon PowerShot G9 X Mark II
  • Fujifilm X-M1
  • Fujifilm X-Pro1
  • Fujifilm X-T20
  • Leica X2
  • Nikon Coolpix A
  • Nikon D2X
  • Nikon D3000
  • Nikon D3400
  • Nikon D4
  • Nikon D500
  • Olympus E-M1MarkII
  • Olympus E-P5
  • Panasonic DMC-FZ200
  • Panasonic DMC-FZ300
  • Panasonic DMC-G7
  • Panasonic DMC-G70
  • Panasonic DMC-G8
  • Panasonic DMC-G80
  • Panasonic DMC-G81
  • Panasonic DMC-G85
  • Panasonic DMC-GX80
  • Panasonic DMC-GX85
  • Panasonic DMC-LX100
  • Panasonic DMC-TZ100
  • Panasonic DMC-TZ101
  • Panasonic DMC-TZ110
  • Panasonic DMC-ZS110
  • Pentax K-70
  • Sony DSC-RX100M5
  • Sony ILCA-68
  • Sony ILCE-5000
  • Sony ILCE-6500
  • Updated Translations:
  • Catalan
  • Dutch
  • French
  • German
  • Hebrew
  • Hungarian
  • Russian
  • Spanish

New in darktable 2.4.0 RC 0 (Dec 3, 2017)

  • The Big Ones:
  • A new module for haze removal
  • The local contrast module can now be pushed much further, it also got a new local laplacian mode
  • Add undo support for masks and more intelligent grouping of undo steps
  • Blending now allows to display individual channels using false colors
  • darktable now supports loading Fujifilm compressed RAFs
  • darktable now supports loading floating point HDR DNGs as written by HDRMERGE
  • We also added channel specific blend modes for Lab and RGB color spaces
  • The base curve module allows for more control of the exposure fusion feature using the newly added bias slider
  • The tonecurve module now supports auto colour adjustment in RGB
  • Add absolute color input as an option to the color look up table module
  • A new X-Trans demosaicing algorithm, Frequency Domain Chroma, was implemented.
  • You can now choose from pre-defined scheduling profiles for OpenCL
  • Speaking of OpenCL, darktable now allows to force-use OpenCL for a specific pixelpipe
  • Xmp sidecar files are no longer written to disk when the content didn't actually change. That mostly helps with network storage and backup systems that use files' time stamps
  • New Features And Changes:
  • Show a dialog window that tells when locking the database/library failed
  • Don't shade the whole region on the map when searching for a location. Instead just draw a border around it.
  • Also in map mode: Clear the search list and map indicators when resetting the search module.
  • With OsmGPSMap newer than version 1.1.0 (i.e., anything released after that OsmGPSMap version) the map will show copyright info.
  • Running jobs with a progressbar (mostly import and export) will show that progress bar ontop the window entry in your task bar – if the system supports it. It should work on GNOME, KDE and Windows at least.
  • Add bash like string replacement for variables (export, watermark, session settings).
  • Add a preferences option to ask before removing empty dirs
  • The "colorbalance" module got a lot faster, thanks to SSE optimized code
  • Make gradient sliders a little more colorful and use them in the white balance module
  • Make PNG compression level used for exporting configurable
  • On OSX, load single images from command line or via drag&drop in darkroom mode
  • Add an option to omit the intermediate tag hierarchy in exported files and only add the last level
  • In the watermark module, sort the list of SVG files and omit the file extension
  • Support XYZ as a proofing profile
  • Local contrast now got a new slider to set the midtone range
  • darktable got two new helper scripts (those are not installed by default, grab them from the sources): One to purge thumbnails that no longer have an associated image in the database, and a second script that uses inotify to watch a folder for new files to open them in a running darktable instance.
  • In the curve editors of base curve and tone curve you can now delete nodes with a right click and see coordinates of nodes while editing. Note that you can use keyboard modifiers ctrl and shift to change the precision of your changes
  • Creating a new instance of a module can now be done with a quick click of the middle mouse button on the multi-instance icon
  • New darktable installations on computers with more than 8 Gb of memory will now by default use half of that per module
  • Several background colors and the brush color are now configurable in the CSS
  • Some new cameras can bump the ISO level to insane highs. We try to follow as good as we can by no longer limiting it to 51200 in the GUI
  • Base curve and the highlights module now support multiple instances and use blending and masks
  • Having the `1` key toggle between 1 and 0 stars wasn't very popular with many people. You can disable that extra feature and have it behave like the other rating shortcuts now
  • You can decide if you want to be asked before resetting the history stacks of images from the lighttable
  • The grain module was slightly changed to have a more pleasing, photographic-paper like appearance
  • Using the color look up table module you can now convert your images to monochrome, honoring the Helmholtz-Kohlrausch effect
  • Some more small improvements were made
  • Bugfixes:
  • Fix the problem with rating images by accident when moving the mouse while typing an image size in the export module
  • Fix several oddities in folder and tag mode of the collect module.
  • Print mode's color profile settings no longer interact with the export module
  • Update the style lists when importing a style
  • Fix some bugs with multiple module instances used in a style
  • On OSX only the main window should be fullscreen, not the popups
  • Some speedups with VERY big libraries or having A LOT OF tags
  • Significantly speed up tagging many images
  • Fix searching locations using OpenStreetMap
  • Fix partial copies of large files in "import from camera"
  • Fix a crash in the import dialog when using Lua to add widgets there
  • Fix some false-positive warnings about another running darktable instance and it having locked the databases
  • No longer switch to the favourite modules group when duplicating one of its modules
  • Fix loading of XYZ files
  • Fix Lab export when the profile was set from the lighttable
  • Create tmp snapshot files with mode 0600 to stop other people looking at them
  • Fix several bugs with Wayland. However, there are still issues, so darktable will prefer XWayland
  • Google deprecated the Picasa Web API so it's no longer possible to create G+ albums
  • Fix the default for sliders with target not being "red" in the channel mixer
  • Fix the removing of directories
  • Make the escape key cancel history dialogs
  • Block keyboard accels when editing camera controls
  • Properly delete XMP sidecars
  • Make sure that the rating set in darktable is used for the exported file, not something set inside the raw file
  • Don't re-write all XMP files when detaching a tag
  • Sync XMPs when a tag is removed from the database
  • Sync XMPs after a tag is attached/detached via the Lua API
  • Many more bugs got fixed
  • Lua:
  • darktable now uses Lua 5.3. The bundled copy got updated accordingly
  • Add dt.print_log. It's like print_error but without the ERROR prefix
  • Reorder callback parameters for intermediate export image: add the actual image to the parameters of the event
  • Call lua post-import-image event synchronously
  • Add darktable.configuration.running_os to detect the OS darktable is running on
  • New widget type: section_label, adds a label which looks like a section change
  • Changed Dependencies:
  • CMake 3.1 is now required.
  • In order to compile darktable you now need at least gcc-4.9+/clang-3.4+, and gcc-5.0+ is *highly* recommended.
  • ZLIB is now required for the DNG Deflate compressed raw support.
  • darktable now uses Lua 5.3
  • Camera support, compared to 2.2.0:
  • Base Support:
  • Canon EOS 200D
  • Canon EOS Kiss X9
  • Canon EOS Rebel SL2
  • Canon EOS 6D Mark II (sRaw1, sRaw2)
  • Canon EOS 77D
  • Canon EOS 9000D
  • Canon EOS 800D
  • Canon EOS Kiss X9i
  • Canon EOS Rebel T7i
  • Canon EOS M5
  • Canon EOS M6
  • Canon PowerShot G9 X Mark II
  • Canon PowerShot SX40 HS (dng)
  • Fujifilm GFX 50S (compressed)
  • Fujifilm X-A3
  • Fujifilm X-E2S
  • Fujifilm X-E3 (compressed)
  • Fujifilm X-Pro2 (compressed)
  • Fujifilm X-T2 (compressed)
  • Fujifilm X-T20 (compressed)
  • Fujifilm X100F (compressed)
  • GITUP GIT2P (chdk-a, chdk-b)
  • Kodak EasyShare Z980
  • LG D855 (dng)
  • LG H815 (dng)
  • LG Nexus 5X (dng)
  • LG US996 (dng)
  • LG VS995 (dng)
  • Leica D-LUX (Typ 109) (4:3, 3:2, 16:9, 1:1)
  • Leica X2 (dng)
  • Nikon COOLPIX B700 (12bit-uncompressed)
  • Nikon D500 (14bit-uncompressed, 12bit-uncompressed)
  • Nikon D5600 (12bit-compressed, 12bit-uncompressed, 14bit-compressed, 14bit-uncompressed)
  • Nikon D7500 (12bit-compressed, 14bit-compressed)
  • Nikon D850 (12bit-compressed, 12bit-uncompressed, 14bit-compressed, 14bit-uncompressed)
  • Nikon LS-5000 (dng)
  • Nokia Lumia 1020 (dng)
  • Olympus E-M10 Mark III
  • Olympus E-M1MarkII
  • Olympus TG-5
  • Panasonic DC-FZ82 (4:3)
  • Panasonic DMC-FZ80 (4:3)
  • Panasonic DMC-FZ85 (4:3)
  • Panasonic DC-GH5 (4:3)
  • Panasonic DC-FZ91 (4:3)
  • Panasonic DC-FZ92 (4:3)
  • Panasonic DC-FZ93 (4:3)
  • Panasonic DC-TZ90 (4:3)
  • Panasonic DC-ZS70 (4:3)
  • Panasonic DMC-FZ330 (4:3)
  • Panasonic DMC-GF6 (16:9, 3:2, 1:1)
  • Panasonic DMC-TZ61 (4:3, 3:2, 1:1, 16:9)
  • Panasonic DMC-ZS40 (4:3, 3:2, 1:1, 16:9)
  • Panasonic DMC-TZ80 (4:3)
  • Panasonic DMC-TZ81 (4:3)
  • Panasonic DMC-TZ85 (4:3)
  • Panasonic DMC-ZS60 (4:3)
  • Pentax K-5 (dng)
  • Pentax K-r (dng)
  • Pentax K10D (dng)
  • Samsung G920F
  • Samsung G935F
  • Samsung GX10
  • Sony ILCE-6500
  • Sony ILCE-9
  • White Balance Presets:
  • Canon EOS 6D Mark II
  • Fujifilm X-T20
  • Fujifilm X100F
  • Nikon 1 AW1
  • Nikon Coolpix A
  • Panasonic DMC-GX80
  • Panasonic DMC-GX85
  • Panasonic DMC-TZ100
  • Panasonic DMC-TZ101
  • Panasonic DMC-TZ110
  • Panasonic DMC-ZS110
  • Pentax K-3 II
  • Noise Profiles:
  • Canon EOS 1300D
  • Canon EOS Kiss X80
  • Canon EOS Rebel T6
  • Canon EOS 5D Mark IV
  • Canon EOS 6D Mark II
  • Canon EOS M5
  • Canon PowerShot G16
  • Canon PowerShot G3 X
  • Canon PowerShot G7 X Mark II
  • Canon PowerShot G9 X Mark II
  • Fujifilm X-M1
  • Fujifilm X-Pro1
  • Fujifilm X-T20
  • Leica X2
  • Nikon Coolpix A
  • Nikon D2X
  • Nikon D3000
  • Nikon D3400
  • Nikon D500
  • Olympus E-M1MarkII
  • Olympus E-P5
  • Panasonic DMC-FZ200
  • Panasonic DMC-FZ300
  • Panasonic DMC-G7
  • Panasonic DMC-G70
  • Panasonic DMC-G8
  • Panasonic DMC-G80
  • Panasonic DMC-G81
  • Panasonic DMC-G85
  • Panasonic DMC-GX80
  • Panasonic DMC-GX85
  • Panasonic DMC-LX100
  • Panasonic DMC-TZ100
  • Panasonic DMC-TZ101
  • Panasonic DMC-TZ110
  • Panasonic DMC-ZS110
  • Pentax K-70
  • Sony DSC-RX100M5
  • Sony ILCA-68
  • Sony ILCE-5000
  • Sony ILCE-6500
  • Updated Translations:
  • Dutch
  • French
  • German
  • Hebrew
  • Russian
  • Spanish