Skip to content

darktable 3.8.0 released

Compare
Choose a tag to compare
@TurboGit TurboGit released this 24 Dec 10:01
· 8080 commits to master since this release

We're proud to announce the new feature release of darktable, 3.8.0!

The github release is here: https://github.com/darktable-org/darktable/releases/tag/release-3.8.0.

As always, please don't use the autogenerated tarball provided by
github, but only our tar.xz file. the checksums are:

$ sha256sum darktable-3.8.0.tar.xz
2e65c7c78d074ad218e3ef7a8c3051a8ea78f4a0406386667859645e5e4bf705 darktable-3.8.0.tar.xz
$ sha256sum darktable-3.8.0.dmg
fe1f1100bf3ca1acc11f69e2ffc6dbb58d11449ed85c086e0ecc52d5acb78e24 darktable-3.8.0.dmg
$ sha256sum darktable-3.8.0-win64.exe
c74d76f9feefc5648c41938bf430b261d3a3308df0ef87085be590b5a5d1110d darktable-3.8.0-win64.exe

When updating from the currently stable 3.6.x series, please bear in
mind that your edits will be preserved during this process, but the new
library and configuration will not be usable with 3.6.x anymore.

You are strongly advised to take a backup first.

Important note: to make sure that darktable can keep on supporting the raw file format for your camera, please read this post on how/what raw samples you can contribute to ensure that we have the full raw sample set for your camera under CC0 license!

  • Almost 3915 commits to darktable+rawspeed since 3.6
  • 571 pull requests handled
  • 265 issues closed

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.

  • 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.

  • 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.

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