From mboxrd@z Thu Jan 1 00:00:00 1970 From: Hartmut Goebel Subject: Re: Python applications that are also libraries Date: Thu, 5 Apr 2018 09:05:53 +0200 Message-ID: <5af6ccf7-592e-1a3c-741e-1a2e1f81780b@crazy-compilers.com> References: <019dbf72-e41b-84ae-405b-cace8053107b@crazy-compilers.com> <87k1tmk9w9.fsf@elephly.net> Mime-Version: 1.0 Content-Type: multipart/alternative; boundary="------------DF6D68ADA13AAECAC039E944" Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:32798) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1f3yy8-00036U-Jw for guix-devel@gnu.org; Thu, 05 Apr 2018 03:06:05 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1f3yy5-0001yU-DY for guix-devel@gnu.org; Thu, 05 Apr 2018 03:06:00 -0400 Received: from mail-out.m-online.net ([2001:a60:0:28:0:1:25:1]:33988) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1f3yy5-0001uV-2o for guix-devel@gnu.org; Thu, 05 Apr 2018 03:05:57 -0400 In-Reply-To: <87k1tmk9w9.fsf@elephly.net> Content-Language: en-US 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: Ricardo Wurmus Cc: guix-devel@gnu.org This is a multi-part message in MIME format. --------------DF6D68ADA13AAECAC039E944 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Am 04.04.2018 um 22:13 schrieb Ricardo Wurmus: >> If this is a "pure" application, I'd install it with*out* propagated >> inputs. This might not be easy to determine, though. > It is both. It is often used just as an application, but the procedure= s > that make up the application are just as often used in an interactive > Python session or as a library. So I'm afraid, we need to install it with propagated inputs. Stimulated by your question I rethought whether we might come around propagated inputs, and I did not find a solution. There must only be one version of a library in each profile, otherwise we'd get conflicts. We could provide our own implementation of site.py (or site-customize.py) to avoid *propagating*, but this would not avoid the *conflicts* but only hide the cause of the conflicts and make them hard to find (as we already discusses a year or two ago). >> https://lists.gnu.org/archive/html/guix-devel/2018-02/msg00456.html > This is about wrapping (or not) using virtual envs. I don=E2=80=99t re= ally see > how this relates to this problem, but maybe I=E2=80=99m missing somethi= ng > obvious. Sorry for the confusion, this link shouldn't have been there. I had pasted it in since I thought it is related and I'm going to refer to is, but it is not. --=20 Regards Hartmut Goebel | Hartmut Goebel | h.goebel@crazy-compilers.com | | www.crazy-compilers.com | compilers which you thought are impossible | --------------DF6D68ADA13AAECAC039E944 Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: quoted-printable
Am 04.04.2018 um 22:13 schrieb Ricardo Wurmus:
If this is a "pure" application, I'd install it wi=
th*out* propagated
inputs. This might not be easy to determine, though.
It is both.  It is often used just as an application=
, but the procedures
that make up the application are just as often used in an interactive
Python session or as a library.

So I'm afraid, we need to install it with propagated inputs.

Stimulated by your question I rethought whether we might come around propagated inputs, and I did not find a solution. There must only be one version of a library in each profile, otherwise we'd get conflicts. We could provide our own implementation of site.py (or site-customize.py) to avoid *propagating*, but this would not avoid the *conflicts* but only hide the cause of the conflicts and make them hard to find (as we already discusses a year or two ago).


https://lists.gnu.org/archive/html/guix-devel/2018-02/msg00=
456.html
This is about wrapping (or not) using virtual envs. =
 I don=E2=80=99t really see
how this relates to this problem, but maybe I=E2=80=99m missing something
obvious.

Sorry for the confusion, this link shouldn't have been there. I had pasted it in since I thought it is related and I'm going to refer to is, but it is not.

--=20
Regards
Hartmut Goebel

| Hartmut Goebel          | h.goebel@crazy-compilers.com   =
            |
| www.crazy-compilers.com | compilers which you thought are impo=
ssible |
--------------DF6D68ADA13AAECAC039E944--