Edit: What’s shown below does not indicate any serious issue (the scene referred default name being repeated is annoying, but otherwise darktable behaves OK so far, I think). The comment OK. There may be a bug. was a left-over from before I went deeper.
I’ve opened a picture (it’s a TIFF file, but that should not matter). I’ve enabled the existing (but disabled) exposure instance, and then added 2 more. I’ve set their params to apply 1, 2 and 3 EV (to make them easy to identify). I then tried to create a style. Look:
On the left, the stack shows 6 exposure instances: the original one (5), and two that I created (6 and 7). I then changed the first instance (the one I activated in step 5); since its parameters were no longer the default, its displayed name changed from the name of the preset (scene referred default) to nothing (there was no manually assigned name). This gave us the instance at position 8.
I then changed the exposure value of the 1st instance I created in step 6, and that resulted in step 9, with an assigned name ‘1’ (I didn’t assign it, it’s just added by darktable). Finally, I changed the instance created in step 7, and that created step 10.
On the right, we see there are 3 instances in the pipeline.
In the create new style dialogue, I can pick items from the history stack, so I have 6 options.
In the XMP sidecar, we have the following exposure entries (the numbers are in ‘programmer style’, they start from 0, so are one less than in the displayed history stack) – slightly formatted, params omitted (multi_name_hand_edited = "0"
mean the name was not manually assigned; multi_name
is the name shown to the right of the module type, whether empty, based on the name of a preset matching the params, or manually assigned; multi_priority
is the ordinal within modules of the same type):
- num=“0”, operation=“colorin”, enabled=“1”, multi_name=“”, multi_name_hand_edited=“0”, multi_priority=“0”
- num=“1”, operation=“colorout”, enabled=“1”, multi_name=“”, multi_name_hand_edited=“0”, multi_priority=“0”
- num=“2”, operation=“gamma”, enabled=“1”, multi_name=“”, multi_name_hand_edited=“0”, multi_priority=“0”
- num=“3”, operation=“flip”, enabled=“1”, multi_name=“auto”, multi_name_hand_edited=“0”, multi_priority=“0”
- num=“4”, operation=“exposure”, enabled=“1”, multi_name=“scene-referred default”, multi_name_hand_edited=“0”, multi_priority=“0”
- num=“5”, operation=“exposure”, , enabled=“1”, multi_name=“scene-referred default”, multi_name_hand_edited=“0”, multi_priority=“1”
- num=“6”, operation=“exposure”, enabled=“1”, multi_name=“scene-referred default”, multi_name_hand_edited=“0”, multi_priority=“2”
- num=“7”, operation=“exposure”, enabled=“1”, multi_name=“”, multi_name_hand_edited=“0”, multi_priority=“0”
- num=“8”, operation=“exposure”, enabled=“1”, multi_name=“1”, multi_name_hand_edited=“0”, multi_priority=“1”
- num=“9”, operation=“exposure”, enabled=“1”, multi_name=“2”, multi_name_hand_edited=“0”, multi_priority=“2”
We can see that the last one, num="9", operation="exposure", enabled="1", multi_name="2", multi_name_hand_edited="0", multi_priority="2"
overrides the initial version of the same module, num="6", operation="exposure", enabled="1", multi_name="scene-referred default", multi_name_hand_edited="0", multi_priority="2"
.
Tomorrow or later I’ll try to look into an exported style to see what’s in there. Maybe it will help understand / better explain the behaviour.