Closed dklann closed 12 months ago
The --update-metadata
flag doesn't seem to do anything. Regardless of whether I provide it or not, the parent's carts metadata get's changed to that of the latest import.
?! Wait. You're saying that importing an audio file via the dropbox mechanism updates metadata in an existing cart if you don't check the (new) box in the dropbox configuration?
I believe I understand what you're saying (in your comment), that running rdimport on the command line with or without --update-metadata
sets metadata in the cart on first and subsequent imports.
My experience has been that rdimport behaves differently when used in --dropbox
mode, and that specifying --update-metadata
(by way of the checkbox in the dropbox configuration) causes the cart metadata to be updated. And without that option, metadata is ignored on subsequent imports.
I think limiting the effect of --update-metadata
to dropbox mode is inconsistent and confusing, especially as there's no language in the man page that mentions this limitation.
rdimport(1)
is used for much more than just implementing dropboxes. Would it not make sense to have --update-metadata
work equivalently in non-dropbox contexts?
I think limiting the effect of
--update-metadata
to dropbox mode is inconsistent and confusing, especially as there's no language in the man page that mentions this limitation.
rdimport(1)
is used for much more than just implementing dropboxes. Would it not make sense to have--update-metadata
work equivalently in non-dropbox contexts?
Yes! I like this idea! It confused me too when running rdimport from the command line and seeing metadata updates "just work".
I would be happy to take a stabe at modifing this PR to adjust rdimport accordingly. Or would you prefer a separate pull request?
Feel free to add any needed changes to this PR.
You're right about rdimport(1)
doing different things metadata-wise vis-a-vis dropbox vs. non-dropbox mode. The original implicit policy was just a Bad Idea on my part. A consistently applied --update-metadata
option fixes this wart, letting users explicitly choose the policy they want applied, rather than the original design which guessed and (often) got it wrong.
OK. Besides tracking your changes, I've also updated utils/rdimport/rdimport.cpp to be more consistent in its handling of metadata. Let me know what you think!
Merged to 'v4'. I updated the schema map in rddbmgr(8)
to show schema version 371 as the beginning of the v4.1.x release series. I also bumped the schema version to 371 in 'lib/dbversion.h'.
Thank you!
We discussed this PR on the mailing list. I'm posting it with the hope that it will be merged sooner rather than later because of the added effort of keeping the database in sync...