velcrome / vvvv-ZeroMQ

wraps NetMQ into vvvv Nodes
GNU Lesser General Public License v3.0
7 stars 3 forks source link

vvvv-ZeroMQ + vvvv-Message + vvvv-time #2

Open circuitb opened 8 years ago

circuitb commented 8 years ago

hi velcrome,

just discover those packs use the same dll's name with different versions so they don't work together!

velcrome commented 7 years ago

I try to update all packs as simultaneously, as i can. however, there might be problems anyway, when people decide to install packs not at the same time. Unfortunately, I don't see a nice way to go about this safely, because the problem is in the non-deterministic load order of those dlls of the hoster (in this case vvvv). Ideas would be:

  1. don't ship the dependency dlls within the pack, but instead force people to also install the other packs (this is what vpm is trying to push, right @microdee?). Problem: if the other pack is not installed, the pack might become dysfunctional, with red nodes everywhere, because dependencies are missing.
  2. Ask users to manually delete dependency dlls, in case they choose to install packs with dlls with a differing version. This will help, as long as the dll in the other pack is fully compatible with the dll, otherwise it will quickly turn unstable. This is very bad, because users will not be able to tell, why things fall apart.
  3. Ask devvvvs to somehow sandbox each pack, where each uses its own set of dlls. While this certainly helps to maintain stability within a pack, two seemingly compatible nodes from different packs will suddenly not be able to be linked while patching.
  4. Have a public Release Day, everytime someone decides to have a breaking change in her pack, that will affect other packs. This drops a huge burden on all pack devs, but is atm the only way to go about.
  5. Have some mechanism in every pack, that checks the version of the dependency dll against some kind of registry, to see if it works, or if the user should be warned about potential mismatches. Mmmh....
microdee commented 7 years ago

1.: yes exactly and in this situation I recommend vpm only deployment in case of dependencies. (in current times until devvvvs come up with something smarter)