From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ricardo Wurmus Subject: Re: PYTHONPATH woes Date: Fri, 23 Feb 2018 20:36:46 +0100 Message-ID: <87r2pbpkfl.fsf@elephly.net> References: <87371tqbyb.fsf@elephly.net> <20180223165953.GA6088@thebird.nl> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:54058) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1epJ9W-0001UC-S6 for guix-devel@gnu.org; Fri, 23 Feb 2018 14:37:07 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1epJ9S-0006EA-UU for guix-devel@gnu.org; Fri, 23 Feb 2018 14:37:06 -0500 Received: from sender-of-o51.zoho.com ([135.84.80.216]:21079) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1epJ9S-0006C1-Id for guix-devel@gnu.org; Fri, 23 Feb 2018 14:37:02 -0500 In-reply-to: <20180223165953.GA6088@thebird.nl> List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: "Guix-devel" To: Pjotr Prins Cc: guix-devel@gnu.org Pjotr Prins writes: > Then there are people > using virtualenv on top of Guix ... Pjotr brings up a good point: can virtualenvs be composed? Do users still have a way to override modules via PYTHONPATH or some other mechanism if we were to create virtualenvs by default? > I think the problem of mixing module versions has to be resolved > through profiles. That should just work(tm). @Pjotr: But we have seen that this doesn=E2=80=99t work as is and currently requires user intervention. We cannot expect users to separate all Python 2 things from all Python 3 things because it is not even obvious in all cases that a tool results in Python modules to be installed to the profile. > For this I suggest we tell Python2 to only use PYTHONPATH2. That way > there is no interference. Python2 is being phased out (it is obsolete) > and upstream should consider such a solution too. I=E2=80=99d like to avoid radical patching when Python seems to have some support for ignoring directories on the PYTHONPATH that don=E2=80=99t inclu= de the correct version number. Patching Python 2 is still an option, but I=E2=80=99d like to explore (and understand) upstream mechanisms first. > With Ruby we have a similar interpreter issue - even more fine grained > between versions. It is a pain. But there is no real solution other > than using profiles properly. Do Ruby *executables* also suffer from accidental dependency injection as Ribodiff does in this case? -- Ricardo GPG: BCA6 89B6 3655 3801 C3C6 2150 197A 5888 235F ACAC https://elephly.net