From owner-freebsd-ports@freebsd.org Thu Nov 12 15:00:02 2015 Return-Path: Delivered-To: freebsd-ports@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7C3B0A2C7A8 for ; Thu, 12 Nov 2015 15:00:02 +0000 (UTC) (envelope-from koobs.freebsd@gmail.com) Received: from mail-pa0-x22c.google.com (mail-pa0-x22c.google.com [IPv6:2607:f8b0:400e:c03::22c]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4AC9E1260 for ; Thu, 12 Nov 2015 15:00:02 +0000 (UTC) (envelope-from koobs.freebsd@gmail.com) Received: by pabfh17 with SMTP id fh17so67228952pab.0 for ; Thu, 12 Nov 2015 07:00:02 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:reply-to:subject:references:to:from:message-id:date :user-agent:mime-version:in-reply-to:content-type :content-transfer-encoding; bh=aoLU4zmMAhNJJ2MnrlbJpLncaaj4SDUPTZvWFhgbLHM=; b=T5TJ5SMe7srL6coaBkVw5i+bJSOBYafr4DCWTYgrUAurFreJ86i14XDN3YZR95ioYL GjOb0hLaDPhySOz8Aw1bdULT2gfhfStzeLaDrsZ7minAvugvXElmeKva/NLnWXM4VTcK Q3NJuqBMIbpoQo1Qjrgw3eZTUqLRYTaBLM+kLS2idjKEh+M0eDdgX3wfi63GFVvoifBZ ICReT4/rJ2yWHxi5YEyPY/cY/oP6VQ7zLdmp/v741YdU8lgCYf95LMW/pSpB7Gcx/9Qy Z2csm96Epwh6KJntPMsTOxLiAycqmunUON1bX2/QX7u7DM0pbM76yAnJqMCzxV25mrmj nJ+A== X-Received: by 10.66.148.67 with SMTP id tq3mr23647066pab.124.1447340401912; Thu, 12 Nov 2015 07:00:01 -0800 (PST) Received: from ?IPv6:2001:44b8:31ae:7b01:d06c:e63f:c1f0:dfb5? (2001-44b8-31ae-7b01-d06c-e63f-c1f0-dfb5.static.ipv6.internode.on.net. [2001:44b8:31ae:7b01:d06c:e63f:c1f0:dfb5]) by smtp.gmail.com with ESMTPSA id n6sm1216696pap.24.2015.11.12.06.59.59 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 12 Nov 2015 07:00:01 -0800 (PST) Sender: Kubilay Kocak Reply-To: koobs@FreeBSD.org Subject: Re: Python default versions References: To: Carmel NY , FreeBSD Ports From: Kubilay Kocak X-Enigmail-Draft-Status: N1110 Message-ID: <5644A967.8000509@FreeBSD.org> Date: Fri, 13 Nov 2015 01:59:51 +1100 User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:42.0) Gecko/20100101 Thunderbird/42.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 12 Nov 2015 15:00:02 -0000 On 12/11/2015 11:45 PM, Carmel NY wrote: > Unless I am mistaken, the default version of "python" on FreeBSD is "2.7" The > default version for the "meta-port" for version 3 of the Python interpreter > is "3.4" Correct. > I was just wondering if there is any serious consideration to at least > changing the FreeBSD default version to "3.x". Python 3.0 was released in > 2008. The final 2.x version 2.7 release came out in mid-2010, Also, could the > default version for the "python3" meta-port be bumped to the latest version, > "3.5". On 3.x as the default version: Unfortunately (as much as I'd love it to be otherwise) the 'has been around since year XXXX argument doesn't fly. Even many Python developers still don't default to 3.x. It's an Python ecosystem issue that is slowly but surely getting traction, and we (OS's) can certainly help that. If every python package was PEP-394 compatible it would at least make it a bit easier. Unfortuntely, there is *that much* legacy code out there that it makes it quite untenable to 'simply make the switch' on the basis of how long Python 3.x has been out. Having said that, There absolutely is a desire to do it, but we (FreeBSD Python team, along with you and other FreeBSD/Python users) should discuss and document what this needs to look like along, how it needs to work, along with any issues that are likely or might present themselves. This will ensure that any migration is intentional, methodical and minimises user impact. TLDR: On Python 3.x as a default version: Yes, the desire is there and there's no reason in principle against it. On 3.5 becoming the default version, can do. Please open an issue under: Ports & Packages::Ports Framework Summary: Mk/Uses/python.mk: Set Python 3.5 as the default 3.x version CC: python@FreeBSD.org > Finally, is it possible to have two versions of python installed on the same > machine, or would it lead to chaos? Absolutely. You may also build port for any version of python by playing with the DEFAULT_VERSION environment variable (in /etc/make.conf or on the CLI) There are *some* ports however, that are not currently 'concurrent installation' safe, in that they install non-unique (read: identically named) files. Ports that have USE_PYTHON=concurrent set are tested to be concurrent safe. Ports for example that install console_scripts and man files "tend" not to be, for examples, both py27-foo and py34-foo (same underlying port) try to install LOCALBASE/bin/foo. Don't hesitate to open an issue for any Python port that isn't concurrent safe, as "that is a bug" and should be fixed. Great questions Carmel, thanks for posting -- Regards ./koobs