From owner-freebsd-ports@freebsd.org Tue Mar 27 21:50:14 2018 Return-Path: Delivered-To: freebsd-ports@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B7170F60AA7 for ; Tue, 27 Mar 2018 21:50:14 +0000 (UTC) (envelope-from madpilot@FreeBSD.org) Received: from mailman.ysv.freebsd.org (mailman.ysv.freebsd.org [IPv6:2001:1900:2254:206a::50:5]) by mx1.freebsd.org (Postfix) with ESMTP id 531B184709 for ; Tue, 27 Mar 2018 21:50:14 +0000 (UTC) (envelope-from madpilot@FreeBSD.org) Received: by mailman.ysv.freebsd.org (Postfix) id 10EFCF60AA6; Tue, 27 Mar 2018 21:50:14 +0000 (UTC) Delivered-To: ports@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id F3A25F60AA5 for ; Tue, 27 Mar 2018 21:50:13 +0000 (UTC) (envelope-from madpilot@FreeBSD.org) Received: from mail.madpilot.net (grunt.madpilot.net [78.47.145.38]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 9291D84705; Tue, 27 Mar 2018 21:50:13 +0000 (UTC) (envelope-from madpilot@FreeBSD.org) Received: from mail (mail [192.168.254.3]) by mail.madpilot.net (Postfix) with ESMTP id 409l6q4kHLzZtZ; Tue, 27 Mar 2018 23:50:11 +0200 (CEST) Received: from mail.madpilot.net ([192.168.254.3]) by mail (mail.madpilot.net [192.168.254.3]) (amavisd-new, port 10024) with ESMTP id qEIZ6f4pwPfZ; Tue, 27 Mar 2018 23:49:59 +0200 (CEST) Received: from tommy.madpilot.net (host190-122-dynamic.6-87-r.retail.telecomitalia.it [87.6.122.190]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.madpilot.net (Postfix) with ESMTPSA; Tue, 27 Mar 2018 23:49:59 +0200 (CEST) Subject: Re: FreeBSD Port: py27-qt5-core / Py36-qt5-core To: "D.-C. M." , "kde@FreeBSD.org" Cc: "ports@FreeBSD.org" References: From: Guido Falsi Message-ID: Date: Tue, 27 Mar 2018 23:49:59 +0200 User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:52.0) Gecko/20100101 Thunderbird/52.6.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=windows-1252 Content-Language: en-US Content-Transfer-Encoding: 8bit X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.25 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 27 Mar 2018 21:50:14 -0000 On 03/27/18 22:44, D.-C. M. wrote: > Hello, > Hi! >   > > At this moment, it is impossible to build side by side py27-qt5-core and > py36-qt5-core. > >   > > There is a collison on /usr/local/bin/pyuic > >   > > This is annoying… Python 27 is still the default, but become quite old now. > I'm not a python expert, but I understand that python 2.7 and python 3 are two slightly different languages not fully compatible with each other. I also understand(but have not gone into depth about this) that there is some resistance to python 3, with many developers being reluctant to move to version 3, for whatever reason(I imagine it's language design choices, but I really don't know) I'm stating this because it means such incompatibilities are not going away easily. It's not just a ports system problem, but an actual python ecosystem problem. Too say it in other words, python 2.7 isn't really just "the old version" and python 3 is not just "the new version". They have parallel lifes. > deskutils/calibre > > which requires py27-qt5-core > > I have tried to modify Makefile to try to build calibre-ebook port > versus py36, but there seems to be a hard dependency to Python 27, as calibre is programmed for python 2.7 and the original author has no plan to update it to work with python 3: https://bugs.launchpad.net/calibre/+bug/1456642 This is in relation to what I said above. > >   > > www/py-mechanize does not not exist in py36 flavor It's not just a dependency problem. Calibre code depends on python 2.7 language peculiarities which are different in python 3 (again I don't know the details) > >   > > I would guess that it could be possible to differentiate the name of binary > > /usr/local/lib/pyuic This would not suffice to fix the problem you're seeing. > >   > > According to Py27 / Py36 flavor, with some strap. > > In fact, most of py27-xx/py36-xx can build side by side, but not py-qt5-core And that's a problem since packages downstream from py-qt5-core strictly require python 2.7 or 3 and can't switch from one to another, but as I said, that's a python problem. -- Guido Falsi