Multiple Versions of one Module in same Environment

Hello Guys,

this is both a question and a feature request.
I am very happy with the new package manager and the environment solution, so that the dependency hell can be decreased. However I figured out a situation, where you can encounter a dependency issue.
For example, when you use Module1 with the latest version, which requires Module2 in version 0.1, but your own program actually requires functions from Module2 in version 0.2, then you got a problem. You have to decide if you either install Module1 latest and Module2@0.1, or if you install just Module2@0.2 and uninstall Module1.

I read here: Unsatisfiable requirements for package ForwardDiff - #8 by tkelman
that it is not possible to install different versions of one package, at least for julia 0.6. Did this maybe change with julia 1.0? If not, would it be possible to introduce such a feature in future julia versions?
One could for example install the latest Module2 under the name Module2, and any other version of it under ´Module2_0.1.0´. And then via metaprogramming make Module1 using Module2_0.1.0.

How do you see this issue?

No and it shouldn’t. You can have different versions installed, but each environment can use only one version.

1 Like

The workaround, as noted in that thread, is to fix one of the packages.

1 Like

Ok I see. This actually makes sense when both packages are still maintained.
I only see a problem, when one of the packages is not actively maintained any more. Then it will be hard to use it, because all the surrounding dependencies grow and grow, but the package itself still relies on old dependencies. But maybe that is the smaller problem, when a package isn’t maintained any more.

1 Like