On Sun, Mar 11, 2018 at 02:30:25PM +0100, Hartmut Goebel wrote:
> As I've been told, it's worse in Ruby, since rube is using the same
> gem-directories for all versions.
That is not accurate. Ruby uses even 'stable' numbers of minor
versions to split out. So 2.4.x and 2.6.x get installed in different
lib site dirs. The assumption is that everything in between is
compatible. If fact, very similar to what Python does.
I think they are on par when it comes to that part of the solution.
Ruby is arguably a bit better off because sources are compiled every
time from source. Thim means that potential conflicts may be a bit
likelier to be caught at runtime.
> In contrast, python uses different (see above) and if you need to
> pin specific package versions, virtual environments are for the
> rescue and quite light-weight.
I know. Still, it is not completely independent per *installation*.
> Neverthelesse these are problems out of scope for guix :-)
Actually the Python and Ruby mess is fixable using (1) Guix profiles
and (2) including the hash in the local $HOME install path. That is
what I do. That enforces perfect isolation between versions. No more
pain after and no need for Ruby bundler or Python virtualenv. I have
no use for those tools.