Skip to content

Conversation

@niieani
Copy link
Contributor

@niieani niieani commented Oct 13, 2025

fixes #990

Write tags into a temporary XMP sidecar before uploading, instead of using Immich tag APIs as a workaround for Immich's race condition in immich-app/immich#16747.
This means tags are attached as part of the initial POST asset upload, in the sidecarData multipart, instead of as subsequent calls to Immich's API.
If there's no sidecar, we create one (with just the tags), and if there is one, we losslessly modify its copy, by adding tags to it before sending it to Immich.

Changes

  • cleans up the generated files after upload
  • introduce XMP sidecar tag writer helpers and expand the reader so existing tags, ratings, and namespaces round-trip correctly when merging sidecars
  • document the new flag and cover the sidecar writer with unit tests and fixture updates
  • adds DEBUG logs for the new functionality
  • adds tests

@niieani niieani force-pushed the feat/tag-via-sidecar branch from 27d80b5 to c13981a Compare November 18, 2025 06:53
@niieani
Copy link
Contributor Author

niieani commented Nov 18, 2025

@simulot rebased on develop

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant