From owner-freebsd-questions@FreeBSD.ORG Thu Nov 7 03:48:14 2013 Return-Path: Delivered-To: freebsd-questions@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 1FC0D564 for ; Thu, 7 Nov 2013 03:48:14 +0000 (UTC) (envelope-from feld@FreeBSD.org) Received: from out2-smtp.messagingengine.com (out2-smtp.messagingengine.com [66.111.4.26]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id E69A9269F for ; Thu, 7 Nov 2013 03:48:13 +0000 (UTC) Received: from compute2.internal (compute2.nyi.mail.srv.osa [10.202.2.42]) by gateway1.nyi.mail.srv.osa (Postfix) with ESMTP id A3AFE21D67 for ; Wed, 6 Nov 2013 22:42:02 -0500 (EST) Received: from web3 ([10.202.2.213]) by compute2.internal (MEProxy); Wed, 06 Nov 2013 22:42:02 -0500 DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d= messagingengine.com; h=message-id:from:to:mime-version :content-transfer-encoding:content-type:subject:date:in-reply-to :references; s=smtpout; bh=+Ym7TAwcf9wpPVCdBMP2UJmxhQ0=; b=KKBIu 5+Pyw74PfIi7XmvAbbE5d2tt+H88gNP0Ty8dvHQJ+t02Zv21Bk1+i1kDQXGzCNyv rjDreUDU9TaoUZFZN0wumbJBMRfH4PoXb0WDw36GA/fEYSyAqLnnVvgZ8F/MRow9 z4DoAHe0mv8799GyNBAvxbt8lgQA8YUdsniCUc= Received: by web3.nyi.mail.srv.osa (Postfix, from userid 99) id 74EE110D23D; Wed, 6 Nov 2013 22:42:02 -0500 (EST) Message-Id: <1383795722.20245.44141593.60C36EE4@webmail.messagingengine.com> X-Sasl-Enc: FRpVLeI6HsP0mVe7JOeaudyN22mDNG9p6x3Y4q2TXhv8 1383795722 From: Mark Felder To: freebsd-questions@freebsd.org MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain X-Mailer: MessagingEngine.com Webmail Interface - ajax-d4893488 Subject: Re: Parallel Python packages for different versions w/ pkgng Date: Wed, 06 Nov 2013 21:42:02 -0600 In-Reply-To: <1383787021.13461.44104609.0336D6C2@webmail.messagingengine.com> References: <1383787021.13461.44104609.0336D6C2@webmail.messagingengine.com> X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 07 Nov 2013 03:48:14 -0000 On Wed, Nov 6, 2013, at 19:17, KT Dassoff wrote: > Hey all, > I had a question about installing multiple copies of Python packages > from ports for different versions of Python (e.g. installing Sphinx for > both Python 2.7 and Python 3.3). Now, I know to set the PYTHON_VERSION > environment variable when building the appropriate py-* port. And the > generated package will have the expected prefix (i.e. py27-* or py33-* > etc). > > The problem is that ports/pkgng will treat a py27-* package and a py33-* > package as different versions to be upgraded even though, as far as I > know, they install their files to different site-packages trees > according to the interpreter they're built for, and if I recall, this > worked fine with the older package infrastructure. > > Example: > * Install `textproc/py-sphinx` with no PYTHON_VERSION set (equivalent to > =2.7); that succeeds, and `pkg info` later shows py27-sphinx installed > * Install the same port with PYTHON_VERSION set to 3.3; the port will > build fine, but when running `make install` (whether directly or via > portmaster), it will try to replace py27-sphinx with py33-sphinx by > deinstalling py27-sphinx before installing the py33 version > > Is there something else I need to do to install them side-by-side, or is > this some bug in pkgng, or is there some actual conflict between Python > packages via ports that I'm not aware of? > The pkg and ports team is working on fixing package name conflicts in the ports tree. Right now packages are identified by their origin in the ports tree. Both py27-sphinx and py33-sphinx have the same origin, textproc/py-sphinx, so they conflict. This will be resolved soon^TM when they're able to flip the switch to working with package names. I'm pretty sure your scenario will work just fine then.