summaryrefslogtreecommitdiff
path: root/graphics/darktable/Makefile
AgeCommit message (Collapse)AuthorFilesLines
2022-11-23massive revision bump after textproc/icu updateadam1-2/+2
2022-10-26*: bump PKGREVISION for libunistring shlib major bumpwiz1-2/+2
2022-08-11Bump all dependent packages of wayland (belatedly)gutteridge1-2/+2
The package changed with the addition of its libepoll-shim dependency. Otherwise, we can get: ERROR: libepoll-shim>=0.0.20210418 is not installed; can't buildlink files.
2022-07-14Bump everything affected by the jpeg.buildlink3.mk fix.dholland1-2/+2
2022-06-23graphics/darktable: Depend on exiftoolgdt1-2/+8
darktable's build system looked for exiftool and if found installed extract_wb_from_images.sh, which broke the build on systems with exiftool. Rather than prevent finding exiftool or making it an option, just depend on it, because almost everyone who uses darktable will want exiftool anyway.
2022-06-23darktable: Remove x86-only restriction. "It looks like it should work".nia1-4/+3
Debian has this at least building on aarch64 without patches.
2022-06-23darktable: Fix building with GCC on NetBSD.nia1-19/+14
2022-04-18revbump for textproc/icu updateadam1-2/+2
2022-02-13darktable: disable some more Werrornia1-1/+2
2021-12-08revbump for icu and libffiadam1-1/+2
2021-11-30darktable: Update graphics/darktable to 3.6.1cirnatdan1-4/+3
# 3.6.1 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 # 3.6.0 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 <various values> 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 # 3.4.1 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. Notes Lua Changed Dependencies RawSpeed changes Camera support, compared to 3.4.0 White Balance Presets Fujifilm X-Pro3 Fujifilm X100V Olympus E-M10 Mark IV Noise Profiles Canon EOS 1500D Canon EOS 2000D Canon EOS Rebel T7 Canon EOS-1D X Mark II Fujifilm X-Pro3 Fujifilm XF10 Nikon Z 5 Panasonic DC-S1R Pentax K-1 Mark II Sony DSC-RX10M4 Translations Afrikaans Czech German European Spanish Finnish French Hebrew Hungarian Italian Polish Brazilian Portuguese Russian Slovak Slovenian # 3.4.0 The Big Ones The user manual is made available at the same time as the release. Note that this user manual is also the last version as a new project has taken over the lead on this. The goal is to have an up-to-date user manual by using a simpler format to write text for contributors. Feedback or contributions for the new format are welcome at https://github.com/darktable-org/dtdocs. Current manual (multilingual): https://darktable.gitlab.io/doc/ New manual (English only): https://www.darktable.org/usermanual/en/ The tethering view has been reworked and is now more stable. The histogram is back on the tethering view (it was disabled in 3.2 due to lack of time) A new module grouping feature has been introduced. This makes the "more modules" module (at the bottom right of the darkroom) obsolete and this module has therefore been removed. The module grouping feature allows users to create their own groups of modules. A number of pre-defined module groups are included as presets (default, minimal, scene-referred, display-referred, all modules) as well as a new default module group tab layout (technical / grading / effects), which beter organizes the modules according to their purpose. Module masking is now enhanced for use with scene-referred workflows. A new masking implementation has been added, with fully unbounded blending modes, which allows parametric masking either in linear RGB or in JzCzHz color spaces. A boost factor slider has been introduced in the masking GUI so that users may set thresholding parameters above 100% to mask pixels in HDR images. JzCzHz is derived from JzAzBz, which is a perceptual color space developed for HDR and published in 2017, with better properties than CIE Lab from 1976, allowing near-perfect hue linearity, for a robust hue/saturation masking. A JzCzHz hue mask will produce the same output whether it is used before input color profile, after output color profile, or anywhere in-between, providing an important consistency improvement over HSL masking. A new color calibration module has been added as a full-featured hub for color correction. It was first intended as a scene-referred (unbounded) rewrite of the old channel mixer, allowing corrections of the color space, both for creative and corrective purposes. Because channel mixing is how white balancing and chromatic adaptation are implemented, color calibration also introduces robust chromatic adaptation transforms, Bradford (from ICC v4) and CAT16 (from CIECAM 2016), improving the color rendition of the white-balanced final image. The module provides a library of all standard CIE illuminants and two machine-learning illuminant detection algorithms, using different assumptions, for when no neutral colors can be sampled from the image, along with the traditional color-picker for manual sampling of neutral colors. Color calibration internally implements gamut-mapping and gamut-clipping, which attempts to preserve the hue and luminance of pixels while avoiding imaginary and out-of-gamut colors at the beginning of the pipeline, to improve the robustness of color-grading modules inside the pipeline. This is made necessary because white balancing will only push input out-of-gamut colors farther away, and will noticeably help dealing with artifical colored lights (LED, stage lighting, etc.). A new workflow setting "chromatic adaptation defaults", in processing preferences, allows users to choose to keep using the white balance module to perform the chromatic adaptation for new edits ("legacy" worflow, the default) or to use the new color calibration instead ("modern" workflow). The modern workflow still uses the usual white balance module, although with different default settings, because input color profiles and demosaicing need at least a rough white balancing early in the pipe. Map view has evolved. Images close to each other are now grouped and a count of grouped images is displayed on the bottom-left corner. This provides better performance when many images need to be shown on the map. Mouse-scrolling over a group's thumb scrolls through the images of the group. Groups containing selected images are highlighted with a white border. The image count is displayed as a white number if all images of the group are exactly at the same place, and in yellow otherwise. Movement of images within the map has also been improved. Click to drag the visible image, Shift-Click to drag the full group. A new "locations" module allows you to define location areas (using elliptical or rectangular shapes). These locations are saved as collections visible under " geotagging" in the collect module. 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 Camera support, compared to 3.2.1 Base Support Canon EOS REBEL T7i Nikon Z 5 (14bit-compressed, 12bit-compressed) Olympus E-M10 Mark IV Panasonic DC-GX7MK3 (4:3) Panasonic DC-S5 (3:2) Sony ILCE-7C Sony ZV-1 White Balance Presets Canon EOS 200D Canon EOS Kiss X9 Canon EOS Rebel SL2 Canon EOS M5 Canon EOS M6 Nikon 1 V2 Nikon Z 50 Sony ILCE-6600 Noise Profiles Panasonic DC-G90 Panasonic DC-G91 Panasonic DC-G95 Panasonic DC-G99 Ricoh GR II Sony NEX-5T Translations Afrikaans Czech German European Spanish Finnish French Hebrew Hungarian Italian Polish Brazilian Portuguese Russian Slovak Slovenian # 3.2.1 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: display-referred : use base-curve module scene-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 need to 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. Notes A known issue when using two computers to edit images. If the three following options activated: update database from selected xmp files write sidecar file for each image check xmp on start then darktable will write the XMP for each images each time you switch from one computer to another. This is due to an issue with the way timestamps are implemented and is being fixed for 3.4. You can follow the discussion here: #5869 A safe option if you are in this specific case is to wait to 3.4 release planned at the end of year. The histogram has been deactivated on the print view because after lot of work on the histogram code it was not possible to have it ready for this view. The work on this part is almost ready now so the print view will get back its histogram for the 3.4 release. An integration test suite has been added. This will ensure better quality and keeping old edits intact. This is an important tool for developers to ensure a rework of a module for performance reason for example does not change visually the image. Lua API changed to 6.0.0 facebook, flickr, and picasa removed from types.dt_imageio_storage_module_t. piwigo added to type.dt_imageio_storage_module_t. notes and version_name metadata fields added to types.dt_lua_image_t data type. Added 4 new properties to dt_collection_properties_t, DT_COLLECTION_PROP_IMPORT_TIMESTAMP, DT_COLLECTION_PROP_CHANGE_TIMESTAMP, DT_COLLECTION_PROP_EXPORT_TIMESTAMP, DT_COLLECTION_PROP_PRINT_TIMESTAMP added darktable.gui.panel_get_size and darktable.gui.panel_set_size functions to set the width of the left or right panels and the height of the bottom panel. fixed is_password field of entry widget to work according to the API manual, so now when it is set to true the field is hidden. Added function darktable.gui.views.lighttable.is_image_visible to check if an image is visible in lighttable view. Added function darktable.gui.views.lighttable.set_image_visible to force an image to be visible in lighttable view. Added a lua scripts installer to the default luarc 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
2021-09-29revbump for boost-libsadam1-2/+2
2021-08-15*: recursive bump for openexr 3.1wiz1-2/+2
2021-07-13darktable: fix for openexr3markd1-2/+2
2021-04-21revbump for boost-libsadam1-2/+2
2021-04-21revbump for textproc/icuadam1-2/+2
2021-04-19darktable: needs librsvgnia1-1/+2
2020-12-04Revbump for openpam cppflags change months ago, belatedly.riastradh1-2/+2
2020-11-05*: Recursive revbump from textproc/icu-68.1ryoon1-2/+2
2020-08-17*: revbump after fontconfig bl3 changes (libuuid removal)leot1-2/+2
2020-06-02Revbump for icuadam1-2/+2
2020-05-22revbump after updating security/nettleadam1-2/+2
2020-05-21*: Recursive revbump from graphics/ilmbaseryoon1-2/+2
2020-05-06revbump after boost updateadam1-2/+2
2020-04-12Recursive revision bump after textproc/icu updateadam1-2/+2
2020-03-10librsvg: update bl3.mk to remove libcroco in rust casewiz1-2/+2
recursive bump for the dependency change
2020-03-08*: recursive bump for libffiwiz1-2/+2
2020-01-26all: migrate homepages from http to httpsrillig1-2/+2
pkglint -r --network --only "migrate" As a side-effect of migrating the homepages, pkglint also fixed a few indentations in unrelated lines. These and the new homepages have been checked manually.
2020-01-18*: Recursive revision bump for openssl 1.1.1.jperkin1-2/+2
2020-01-12*: Recursive revbump from devel/boost-libsryoon1-1/+2
2020-01-05darktable: Update to 3.0.0ryoon1-4/+10
* Use clang and OpenMP because GCC Graphite is not universal (at least NetBSD 9.99.31 has no Graphite support). Changelog: ## The Big Ones - A full rework of the GUI. The whole GUI is now fully controlled by [GTK+ CSS rules](https://developer.gnome.org/gtk3/stable/chap-css-overview.html). 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-icons : the default theme with icons - 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 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 <kbd>E</kbd> 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 <kbd>Ctrl+click</kbd> 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 <kbd>Z</kbd> and <kbd>Ctrl+Z</kbd> respectively) are now assigned to <kbd>W</kbd> and <kbd>Ctrl+W</kbd> in order to follow the convention of using <kbd>Ctrl+Z</kbd> for the "undo" function (<kbd>Ctrl+Y</kbd> 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 <kbd>Ctrl+Shift+drag</kbd> 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: - raw black/white point - white balance - highlight reconstruction - demosaic - input color profile - output color profile - gamma - 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, <kbd>Ctrl+click</kbd> 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 <kbd>Ctrl+click</kbd> on corresponding mode icon. - An accels window (<kbd>H</kbd>) 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. - Widespread performance tuning, most affected decompressors: * Sony ARW2 * Panasonic V5 * Phase One * Nikon * Pentax * Canon * Samsung V1 (compression = '32772') * Samsung V2 (compression = '32773') - 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-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
2019-11-02graphics: align variable assignmentsrillig1-6/+6
pkglint -Wall -F --only aligned --only indent -r No manual corrections.
2019-08-22Recursive revbump from boost-1.71.0ryoon1-2/+2
2019-07-21*: recursive bump for gdk-pixbuf2-2.38.1wiz1-2/+2
2019-07-20*: recursive bump for nettle 3.5.1wiz1-2/+2
2019-07-17Recursive revbump for graphics/exiv2 update.nia1-2/+2
2019-07-01Recursive revbump from boost-1.70.0ryoon1-2/+2
2019-04-03Recursive revbump from textproc/icuryoon1-2/+2
2019-03-18Recursive bump for ghostscript default changegdt1-1/+2
2019-03-05Update to 2.6.0ryoon1-11/+16
Changelog: we're proud to announce the new feature release of darktable, 2.6.0! as always, please don't use the autogenerated tarball provided by github, but only our tar.xz. the checksums are: when updating from the currently stable 2.4.x series, please bear in mind that your edits will be preserved during this process, but it will not be possible to downgrade from 2.6 to 2.4.x any more. #### Important note: to make sure that darktable can keep on supporting the raw file format for your camera, *please* read [this post](https://discuss.pixls.us/t/raw-samples-wanted/5420?u=lebedevri) on how/what raw samples you can contribute to ensure that we have the *full* raw sample set for your camera under CC0 license! - Over 1600 commits to darktable+rawspeed since 2.4 - 260+ pull requests handled - 250+ issues closed - Updated user manual is coming soon™ ## 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 - Afrikaans - Albanian - Chinese - Czech - Dutch - Finnish - French - Galician - German - Hebrew - Hungarian - Italian - Japanese - Nepal - Norwegian Bokmål - Polish - Portuguese - Romanian - Russian - Slovenian - Thai
2018-12-13revbump for boost 1.69.0adam1-2/+2
2018-12-09revbump after updating textproc/icuadam1-2/+2
2018-11-14Revbump after cairo 1.16.0 update.kleink1-2/+2
2018-11-12Recursive revbump from hardbuzz-2.1.1ryoon1-2/+2
2018-10-24*: (belatedly) revbump for net/libsoup updateleot1-2/+2
Thanks to <wiz>!
2018-08-16revbump after boost-libs updateadam1-2/+2
2018-07-20Recursive revbump from textproc/icu-62.1ryoon1-2/+2
2018-04-29revbump for boost-libs updateadam1-2/+2
2018-04-17Add p11-kit to gnutls/bl3.mk and bump dependencies.wiz1-2/+2
2018-04-16Recursive bump for new fribidi dependency in pango.wiz1-2/+2