feat(server): Handle sidecars in external libraries #14800
+355
−83
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Recent improvements in sidecar handling in uploaded assets haven't propagated to external libraries before now.
With this PR, we correctly handle both file.jpg.xmp and file.xmp.
The key part is that we force a sidecar update for every metadata extraction of an external asset.
e2e tests added
A limitation that remains is that we don't automatically import changes when only the xmp is changed. The user will have to manually initiate a metadata refresh of the affected assets when this happens. This will be handled in the future by the planned asset file handling rework, but this depends on the kysely migration :) With the new asset file rework we will only re-discover xmp files when we actually need to.
This PR is a prerequisite for #14456