From owner-freebsd-ports@freebsd.org Wed Dec 12 21:33:24 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 857AF1326B0B for ; Wed, 12 Dec 2018 21:33:24 +0000 (UTC) (envelope-from jhb@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 1C96F82526 for ; Wed, 12 Dec 2018 21:33:24 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: by mailman.ysv.freebsd.org (Postfix) id D377B1326B0A; Wed, 12 Dec 2018 21:33:23 +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 B0CEC1326B09 for ; Wed, 12 Dec 2018 21:33:23 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from mail.baldwin.cx (bigwig.baldwin.cx [IPv6:2001:470:1f11:75::1]) (using TLSv1 with cipher DHE-RSA-CAMELLIA256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 3E48382525 for ; Wed, 12 Dec 2018 21:33:23 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from John-Baldwins-MacBook-Pro-2.local (ralph.baldwin.cx [66.234.199.215]) by mail.baldwin.cx (Postfix) with ESMTPSA id BBB9D10AFD2 for ; Wed, 12 Dec 2018 16:33:21 -0500 (EST) To: ports@FreeBSD.org From: John Baldwin Subject: Package names and flavors for python (and php?) Openpgp: preference=signencrypt Autocrypt: addr=jhb@FreeBSD.org; keydata= mQGiBETQ+XcRBADMFybiq69u+fJRy/0wzqTNS8jFfWaBTs5/OfcV7wWezVmf9sgwn8TW0Dk0 c9MBl0pz+H01dA2ZSGZ5fXlmFIsee1WEzqeJzpiwd/pejPgSzXB9ijbLHZ2/E0jhGBcVy5Yo /Tw5+U/+laeYKu2xb0XPvM0zMNls1ah5OnP9a6Ql6wCgupaoMySb7DXm2LHD1Z9jTsHcAQMD /1jzh2BoHriy/Q2s4KzzjVp/mQO5DSm2z14BvbQRcXU48oAosHA1u3Wrov6LfPY+0U1tG47X 1BGfnQH+rNAaH0livoSBQ0IPI/8WfIW7ub4qV6HYwWKVqkDkqwcpmGNDbz3gfaDht6nsie5Z pcuCcul4M9CW7Md6zzyvktjnbz61BADGDCopfZC4of0Z3Ka0u8Wik6UJOuqShBt1WcFS8ya1 oB4rc4tXfSHyMF63aPUBMxHR5DXeH+EO2edoSwViDMqWk1jTnYza51rbGY+pebLQOVOxAY7k do5Ordl3wklBPMVEPWoZ61SdbcjhHVwaC5zfiskcxj5wwXd2E9qYlBqRg7QeSm9obiBCYWxk d2luIDxqaGJARnJlZUJTRC5vcmc+iGAEExECACAFAkTQ+awCGwMGCwkIBwMCBBUCCAMEFgID AQIeAQIXgAAKCRBy3lIGd+N/BI6RAJ9S97fvbME+3hxzE3JUyUZ6vTewDACdE1stFuSfqMvM jomvZdYxIYyTUpC5Ag0ERND5ghAIAPwsO0B7BL+bz8sLlLoQktGxXwXQfS5cInvL17Dsgnr3 1AKa94j9EnXQyPEj7u0d+LmEe6CGEGDh1OcGFTMVrof2ZzkSy4+FkZwMKJpTiqeaShMh+Goj XlwIMDxyADYvBIg3eN5YdFKaPQpfgSqhT+7El7w+wSZZD8pPQuLAnie5iz9C8iKy4/cMSOrH YUK/tO+Nhw8Jjlw94Ik0T80iEhI2t+XBVjwdfjbq3HrJ0ehqdBwukyeJRYKmbn298KOFQVHO EVbHA4rF/37jzaMadK43FgJ0SAhPPF5l4l89z5oPu0b/+5e2inA3b8J3iGZxywjM+Csq1tqz hltEc7Q+E08AAwUIAL+15XH8bPbjNJdVyg2CMl10JNW2wWg2Q6qdljeaRqeR6zFus7EZTwtX sNzs5bP8y51PSUDJbeiy2RNCNKWFMndM22TZnk3GNG45nQd4OwYK0RZVrikalmJY5Q6m7Z16 4yrZgIXFdKj2t8F+x613/SJW1lIr9/bDp4U9tw0V1g3l2dFtD3p3ZrQ3hpoDtoK70ioIAjjH aIXIAcm3FGZFXy503DOA0KaTWwvOVdYCFLm3zWuSOmrX/GsEc7ovasOWwjPn878qVjbUKWwx Q4QkF4OhUV9zPtf9tDSAZ3x7QSwoKbCoRCZ/xbyTUPyQ1VvNy/mYrBcYlzHodsaqUDjHuW+I SQQYEQIACQUCRND5ggIbDAAKCRBy3lIGd+N/BCO8AJ9j1dWVQWxw/YdTbEyrRKOY8YZNwwCf afMAg8QvmOWnHx3wl8WslCaXaE8= Message-ID: <469b896f-6d65-17bf-9bd9-034b65d8eb88@FreeBSD.org> Date: Wed, 12 Dec 2018 13:33:21 -0800 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:60.0) Gecko/20100101 Thunderbird/60.3.3 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 8bit X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.4.3 (mail.baldwin.cx); Wed, 12 Dec 2018 16:33:21 -0500 (EST) X-Virus-Scanned: clamav-milter 0.99.2 at mail.baldwin.cx X-Virus-Status: Clean X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 12 Dec 2018 21:33:24 -0000 The devel/gdb port supports optional python integration (so that you can write python scripts that work with gdb internals to define custom commands, pretty printers, etc.). This means gdb can be linked against different python versions. I decided to add flavors to the gdb port to handle the different python versions (diff is at D18534). However, I chose to do something with the package name suffixes that apparently is at odds with best practice, but seems to be more user friendly. Specifically, I did not add the python flavor as a suffix for the "default" package. Had I done so, the two packages would have been named 'gdb-py27' and 'gdb-py36' and 'pkg install gdb' would no longer work. So, I instead dropped the suffix when the default python version was used so that the results are 'gdb' and 'gdb-py36' (or if you python3 as your default you will get 'gdb' and 'gdb-py27'). I could have just used 'USE_PYTHON=optsuffix' for this, but that currently emits a warning, so I ended up doing it via a 'homegrown' way. I do think it's important that 'pkg install gdb' still works since that is splatted in various places now like the release notes for 12.0 and src/UPDATING, etc. If having the equivalent of 'optsuffix' really is terrible then I'd rather drop the python flavors than break 'pkg install gdb'. On a related note, I installed a new box with 12.0 last week and wanted to install arcanist. Trying to use 'pkg install arcanist' failed because there is no longer a package named 'arcanist'. Trying to use 'pkg install devel/arcanist' was a separate fail because it wanted to install all four flavors (along with 4 sets of php packages). I ended up using 'pkg install arcanist-php72'. However, as a user I was just guessing that 'php72' is the default version of php, and I would probably prefer to not have to think about that. It would be great if 'pkg install arcanist' just installed the default flavor with the default version of PHP. Also related to this, I upgraded a different box from 11.2-ish to 12.0 two weeks ago and rebuilt all its packages using a local poudriere. It also tripped over the flavors package names because the old arcanist package I had installed (php5-arcanist-20161003 from devel/arcanist) wasn't upgraded by 'pkg upgrade -f' to the php72 version. I ended up explicitly deleting it and installing the new version. I'm not sure what the right solution is, but it seems like 'pkg upgrade' of the previous default flavor should upgrade to the new default flavor if the default flavor changes rather than getting stuck on an old version (that in my case my poudriere build didn't rebuild). -- John Baldwin