From owner-freebsd-python@FreeBSD.ORG Thu Feb 13 14:02:54 2014 Return-Path: Delivered-To: python@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id F02C989A; Thu, 13 Feb 2014 14:02:53 +0000 (UTC) Received: from mail-lb0-x234.google.com (mail-lb0-x234.google.com [IPv6:2a00:1450:4010:c04::234]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 46320171A; Thu, 13 Feb 2014 14:02:53 +0000 (UTC) Received: by mail-lb0-f180.google.com with SMTP id n15so8056506lbi.25 for ; Thu, 13 Feb 2014 06:02:51 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=message-id:date:from:user-agent:mime-version:to:cc:subject :references:in-reply-to:content-type:content-transfer-encoding; bh=6lJJXzvkbz7YdV1WjE1yCRy/IRtNp+G/UwoBJ7ik43U=; b=ZionFGobPye3tX9DsEu9qMsW++XcSA0/w89OHT19XXw0XL3bFYn2Y4oXEwqOh/EZP5 LtHrxygF6LtHEpSSb9VW8ntsRUu8I0/CudKTZvr+QcqVHfAiCVJAtmu0UkOgvM9H8Pc2 Ye/HtLHj6hdCZGPV60fYwrk0wOr0JmCloFD0nOs3tYxp+5PvSSw/3cK2kSpUKKLJPmkD ryNeAy/WJcok93GptI3M+TR/JkjpQ/gafro4CHYiULJla3B7r2snyR63QzGi8ffixIYd c6JH/RSXktNXrSfexGFCfbxkVdpqJYSeoPCvxim9XGiPhfdFznJzgP6m6E7zQ4OkusLU wFxA== X-Received: by 10.152.205.197 with SMTP id li5mr1193987lac.50.1392300171280; Thu, 13 Feb 2014 06:02:51 -0800 (PST) Received: from [192.168.1.129] (mau.donbass.com. [92.242.127.250]) by mx.google.com with ESMTPSA id jl8sm2209111lbc.16.2014.02.13.06.02.50 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Thu, 13 Feb 2014 06:02:50 -0800 (PST) Message-ID: <52FCD089.8000802@gmail.com> Date: Thu, 13 Feb 2014 16:02:49 +0200 From: Volodymyr Kostyrko User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:24.0) Gecko/20100101 Thunderbird/24.3.0 MIME-Version: 1.0 To: koobs@FreeBSD.org, python@FreeBSD.org Subject: Re: HEADS-UP and RFC - Adding setuptools as default RUN_DEPENDS References: <52FC7E4E.4020801@FreeBSD.org> In-Reply-To: <52FC7E4E.4020801@FreeBSD.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Cc: Scott Sturdivant X-BeenThere: freebsd-python@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: FreeBSD-specific Python issues List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 13 Feb 2014 14:02:54 -0000 13.02.2014 10:11, Kubilay Kocak написав(ла): > Two days ago I updated virtualenv, transitioning it away from the > deprecated USE_PYDISTUTILS=easy_install to USE_PYDISTUTILS=yes as many > other ports have recently. > > I thought nothing of it until the following report by Scott (cc'd): > > http://lists.freebsd.org/pipermail/freebsd-python/2014-February/006592.html > > The summary of that thread is: > > a) Any python software that uses *console_scripts* needs the > pkg_resources module from setuptools at run time. This basically means > anything that installs a CLI utility. > > b) Package-only users don't get setuptools installed when they install > the packages of the above ports, because =yes *doesnt* set a RUN_DEPENDS > on it. > > This breaks console script invocation, with the following error: > > Traceback (most recent call last): > File "/usr/local/bin/", line 5, in > from pkg_resources import load_entry_point > ImportError: No module named pkg_resources > > Reproduction steps are: > > 1) Install port or package that uses console_scripts > 2) If you installed the package, run the console script > 3) If you installed the port > 3.1) Run the console script > 3.2) Remove py-setuptools > 3.3) Run the console script again > > Reproduced with: py-virtualenv (`virtualenv`), py-tox (`tox`) and > py-nose (`nosetests`) > > We (python@) have now standardised on a consistent installation pattern > for all python software, whether pure-distutils or setuptools based, and > there are run-time requirements that are currently not being satisfied. > > Attached is a patch moving RUN_DEPENDS+=setuptools from the > =easy_install only case, to the default case. > > Patch review requested, other comments welcome. > > ../koobs This effectively means that user should choose between python2 and python3 and all ports that are not from choosen side will stop to compile/work? Like i need to have www/trac, and some other script needs databases/py-postgresql. Both require py-setuptools yet trac needs py27-setuptools and postgresql driver - py33-setuptools. So there would be no easy way to install both? -- Sphinx of black quartz, judge my vow.