You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
For a concrete example of how it ends up working now, see documentation in #101
There are other possible alternatives:
We could just list all these dependencies as actual dependencies? But I imagine the reason not to include them in the formal dependencies is to not force every app using active_encode to install them, even if they'll never use the one adapter that needs them.
We could put each adapter (at least if it needs additional dependencies) in it's own gem, say active_encode-mediaconvert. But I suspect the added maintenance burden of multiple gems that all need to work with each other as they each progress -- is more than we can handle right now.
So something like the Rails/valkyrie approach is probably the least bad low hanging fruit improvement.
I think it is preferable to expand on what valkyrie does, and formally specify the version specification (1.x, 2.x etc) of the "optional dependency" that is required. I think Rails does do that, although its' error message has in the past confusingly not told you what version it needed! I wrote more about this here: https://bibwild.wordpress.com/2015/09/09/optional-gem-dependencies/
See discussion on #94
Try doing something more like rails / valkyrie to load gems for adapters and warn users when they aren't installed and attempting to use them.
https://github.com/samvera/valkyrie/blob/1ad73aed5b41aa1957912f198015629e05a2a2b1/lib/valkyrie/persistence/fedora.rb#L3-L9
The text was updated successfully, but these errors were encountered: