Heads-up: AgX backwards compatibility change coming

During the development of the AgX module, I’ve created no less than 7 versions. This is normally not done for in-development modules. Providing backward-compatibility was a dubious decision: while these versions were helpful for those brave enough to test the yet unreleased module as a daily driver, the migration code has become a maintenance hurdle for the future, requiring almost 400 lines of code – code, which would be a dead weight for the rest of darktable’s hopefully long years ahead, never used by most users, who will start with v7, once the release is out.

Therefore, this migration code will be removed. It does not mean that you will lose your edits; it simply means that edits made with v1 to v6 will no longer be supported. Should you wish to keep those, you will have to upgrade them (by simply opening them in the darkroom) using the as of today (17 November 2025) current master version. You should filter the image collection to see which ones were edited using Agx (or agx, as the module was previously known). It is enough to upgrade ‘darktable|history = altered’ images, as only those may have manual modifications.

module and history are both in the collections → darktable category:

Unfortunately, module version information is not available via tags. Then, open each image in the darkroom (you can open the first one and use space to go through them).

Then, in a few days (I will let you know in this thread), one of the new daily builds will come with a version of the module that will no longer be able to properly migrate old versions; any parameters for versions 1 to 6 will simply be replaced with the defaults of v7.

My understanding for other pieces of data where history is involved:

  • darktable migrates presets when it starts, so those are safe. However, exported preset files will not be migrated once they are restored into darktable, once the new version arrives, so if you have any that you wish to migrate, import them into darktable, restart darktable to trigger a migration, and export the presets, if desired.
  • styles are not migrated; you will have to recreate them using the current master build
  • if you export an image from the lighttable (without opening it in the darkroom, which would update the history stack), I think that the history stack embedded in the metadata will be the old version. Processing takes place with an in-memory migrated version of the settings, but that is not written back to the database, the XMP, or inserted in the exported metadata.

And, of course, any PlayRaw etc. XMPs stored online will not be migrated. :slight_smile:

17 Likes

which begs the question:

can you use the darktable collection module to find all photos that use a certain module in their stack? or do we need to beg @wpferguson for a lua script to do that?

3 Likes

This is a very sensible approach you are taking. I am more than happy to accept that some of my previous edits will be broken as you fine tune the AgX module for the upcoming DT5.4 release. The risk we choose to take when we use the development versions.

Great work with AgX. It has become my go to module. I find that the tone equalizer module also works better in my hands now that AgX is the tone mapper that I am using. I am just so loving AgX.

10 Likes

Yes, you can:

module and history are both in the collections → darktable category:

I agree @Terry above very much and am happy with this.

Only I’ve just today started the process of building dt and I’ve still some hurdles to take before mastering it. To be shure, where do I find today’s current master version (preferably in the form of an AppImage which I started getting used to)?

I guess this is the place to be: Release Darktable nightly build 20251117 · darktable-org/darktable · GitHub

Kind regards, Jetze

Yes, that’s the one.

1 Like

Thanks once more too all contributing… regards Jetze

Out of curiosity - what might happen when I’m on 5.4.0 and will import an old .xmp file having settings of a development AgX module in it?

With early versions your image would come up black and you would need to reset the module…so of course you get the new module and defaults applied…Likely depending on how old the edit is something like that might happen…

1 Like

Just opening the RAW file will update the XMP?
What is the version op todays master is Agx? As I got the latest master right now at 20:39 CET.

No: it will apply the defaults of v7, so the image would come up as if you had just reset the module.

1 Like

v7 is the current version. And:

even better…

1 Like

Looks like the official Darktable 5.4 will be a great Christmas present. Thanks Kofa and others for this work.

4 Likes