From owner-freebsd-ports@freebsd.org Sat Jun 4 18:48:19 2016 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 CF8A3B6A2EA for ; Sat, 4 Jun 2016 18:48:19 +0000 (UTC) (envelope-from jeffreybouquet@yahoo.com) Received: from nm44-vm10.bullet.mail.bf1.yahoo.com (nm44-vm10.bullet.mail.bf1.yahoo.com [216.109.115.46]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 79D9718BB for ; Sat, 4 Jun 2016 18:48:19 +0000 (UTC) (envelope-from jeffreybouquet@yahoo.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1465065987; bh=fluf48cX30cb3x+Lc0dXGvvDNvtXTSWp8tLYj2MzxGA=; h=Subject:To:References:Cc:From:Date:In-Reply-To:From:Subject; b=cOkna7iBOXNMOwQ+ryWV3rraeLoalNx2mDv4LeLHiSZJZpasY4fSN1TCjhLrethrh3Cwftzz+TJepNQnur98/WshGZ70i02Ghpe5PX3xnzDWsc/XInOvKhEy/bkGktWkIyZIJiYtcgVGqQR0RKhAdM4U9kekpHSICj+GG02Ua1FaKfwpgWh7h57K6o3y9v3f6RczadK6clJcIdnVvQw8VKxkaeAop5sGiB6iqicT7Q1/pDh33GsOzto0JQ4FKPriAZjaGHDVS1fbsjjy0PXhRbzEDowxEi62F8EzHcVsf1flRhPdpzX4tnlnIatk3qDAdWLTKzA1+7LP2/w0/v+/aA== Received: from [98.139.170.178] by nm44.bullet.mail.bf1.yahoo.com with NNFMP; 04 Jun 2016 18:46:27 -0000 Received: from [98.139.211.203] by tm21.bullet.mail.bf1.yahoo.com with NNFMP; 04 Jun 2016 18:46:27 -0000 Received: from [127.0.0.1] by smtp212.mail.bf1.yahoo.com with NNFMP; 04 Jun 2016 18:46:26 -0000 X-Yahoo-Newman-Id: 992798.60923.bm@smtp212.mail.bf1.yahoo.com X-Yahoo-Newman-Property: ymail-3 X-YMail-OSG: Ki_UfrQVM1kGMM4Fzdv6vC14SJumo0via898g9ytn0eZ_ul MVHfoQh5VNS67RLGkdMNmuIPOar.QAqdgr3afZ5u9JDOdEK305HzAiDFI2P5 lqoQ3VtT810DRJdksngciQbAP0WfsFYe7z9tQtzsTK6W1W2YGTAYWkndsMwM QHkqP7X1CQtdEaEpwqpNlRbcuvIpmhL9rQTguzkyPL2FYRjkSLslBZd5FXuO Tu8hPiwecqEp4NPESGAd9A7Q6ZEwDELDW0Qex5Nn947Q5PG7i65MVjZF.tfG 4lOgMYcQ8Dyxjfi9xPp4wrBKDZmPuZKbyuq.3GGMo.7BXWW5jLJOb7ZC8.YC k5qpJ7mDcMn5A2vKv8256oeqT3nhovD8owvbedhPgZG0Y6W6OPQjEI9UvDKx ALnkzV1vm2AP_lB4khDkeHFsSeGr6CiYH6N5rB0v8Dh0GPRPXlyQCzScOM9u 4QhUilruxy4tlP9W5ZrGTdKowQuaF_JILqAwcAuPX2vBb4QXuGyIKJrK2zh5 C3L55G1xQfXS.iuuuZPOQpwhv9o0kl5flYoyqcw-- X-Yahoo-SMTP: 6IZaPQyswBAeyzp3urHRlQfBxGxx4Js3YAIn Subject: Re: old ports/packages To: Franco Fichtner , Miroslav Lachman <000.fbsd@quip.cz> References: <03cc4012-026e-c007-09e1-ee45524f1b95@elischer.org> <1FAFDF989841D03604BB448B@atuin.in.mat.cc> <7b8d22c6-1fed-d517-9f89-693b88dfc358@freebsd.org> <20160504070341.GV740@mail0.byshenk.net> <3dfd6fea-da32-b922-65d1-f64b8e113112@toco-domains.de> <6e340f95-6d10-4991-0cd6-95d336e2f044@gjunka.com> <3e55c7d8-801c-a2b3-e92e-9945e896142b@toco-domains.de> <5809f808-8b16-93ed-5351-828a7d68eb2b@unsane.co.uk> <574ED144.1050603@quip.cz> <9D785F08-AB0B-4324-B1B3-286D90AF9BF7@lastsummer.de> Cc: freebsd-ports@freebsd.org, Torsten Zuehlsdorff , Vincent Hoffman-Kazlauskas From: Jeffrey Bouquet Message-ID: <12b50783-f79b-56b6-25f8-91e23a902776@yahoo.com> Date: Sat, 4 Jun 2016 11:46:24 -0700 User-Agent: Mozilla/5.0 (X11; FreeBSD i386; rv:45.0) Gecko/20100101 Thunderbird/45.1.0 MIME-Version: 1.0 In-Reply-To: <9D785F08-AB0B-4324-B1B3-286D90AF9BF7@lastsummer.de> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.22 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 04 Jun 2016 18:48:19 -0000 On 06/ 3/16 08:17 AM, Franco Fichtner wrote: > Hi there, > >> On 01 Jun 2016, at 2:12 PM, Miroslav Lachman <000.fbsd@quip.cz> wrote: >> >> There is a main difference - if you upgraded from 9.2 to 9.3, you don't need to recompile (reinstall) all ports, but if you upgraded from 9.3 to 10.x you need to reinstall all your packages and then remove old 9.x libraries from the base system. >> On 01 Jun 2016, at 2:12 PM, Miroslav Lachman <000.fbsd@quip.cz> wrote: >> >> There is a main difference - if you upgraded from 9.2 to 9.3, you don't need to recompile (reinstall) all ports, but if you upgraded from 9.3 to 10.x you need to reinstall all your packages and then remove old 9.x libraries from the base system. > This is very much true for a single user point of view, but > the devil is in the details. Let's go through the transition > that we as the OPNsense project went through in the FreeBSD 10 > series... Not a rant, just facts. > > The initial release was 10.0, which was phased out after a > year, leaving us no choice but to go 10.1 just two months > after our initial release in order to receive official security > updates. Worst case it takes a few months to adapt to the > major transition so that's 12 months minus X months of internal > engineering, depending on your staff expertise. In that case > we started in 2014, took us 4 months, that's 6 months including > the time 10.0 was officially available, so 6 months left for > support, when you actually start adapting to 10 as soon as it > comes out. For many that's a luxury not going to happen. One > can blame anyone for starting late, but it's not going to solve > the real world problem. > > 10.1 went really well. When 10.2 happened for us in January > 2016, however, we've already went testing 3 months before and > had a number of issues that were not being addressed upstream > for a longer amount of time: > > o HyperV disks stopped registering as ada(4) devices, killing > installs that were not using labels. Never fixed. > > o Hyper-V NAT broken for a very long time, only fixed in 10.2 > after active polling for an errata[1] > > o pf checksumming broke with offloading[2] > > But the kicker was that building pkg on 10.2 suddenly changed > the ABI behaviour in at least two ways that we know of: > > (1) The reaper for package scripts was now suddenly active, > making it a lot harder to restart a service on package upgrade > from their own scripts. We hat do investigate and disable the > reaper code in pkg itself in order to retain functionality. I > would think that others ran into this silently as well. > > (2) 10.1 systems preloading the "new" pkg for 10.2 were unable > to upgrade certain packages, in this instance isc-dhcp43-*. > It took a few months to even get to the point of triggering > this. In short, we pinned down the pkg ABI to 10.1[3] in order > to allow our older 10.1 systems to upgrade. This should not be > happening in a "ABI stable" environment. There is pkg-static, > but at least in the scope of FreeBSD it's only used when pkg > fails for this or that reason, which is very hard to explain to > a GUI or backend script. Why not make it the default? > > 10.2 was the proverbial rollercoaster ride that some would not > like to see repeated. 10.3 looks better, but what does that say > about 10.4 or 11.0? > > But 10.3 already had a major speed regression during package > installation only caught after the release[4]. Who knows what > our users will be facing once we go live in a few months. > > For downstream projects, this is at least an order of magnitude > worse than the simple user that sits in a shell and runs a magical > fix command to amend its upgrade path. fir some it's even impossible > to get into a shell. Most of downstream projects have automated > processes, upgrade features that rely on certain behaviour, well, > rely on behaviour to stay stable for at least 10.x, which would > make sense. ;) > > And now we run for each 10.x, every time just run for it in order > to make sure that we're not missing an iteration that would amplify > the problems we'll be facing with upgrading later. > > And mind you, this is *with* rebuilding everything from scratch > for each minor update just to be on the safe side. :) > > > Cheers, > Franco > > -- > [1] https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=203630 > [2] https://www.freebsd.org/security/advisories/FreeBSD-EN-16:02.pf.asc > [3] https://github.com/opnsense/ports/commit/76975890103 > [4] https://www.freebsd.org/security/advisories/FreeBSD-EN-16:06.libc.asc > _______________________________________________ > freebsd-ports@freebsd.org mailing list > https://lists.freebsd.org/mailman/listinfo/freebsd-ports > To unsubscribe, send any mail to "freebsd-ports-unsubscribe@freebsd.org" I again wonder whether the old /var/db/pkg [ flat files rather than an ABI ] could serve as a secondary means to the pkg upgrade of port/packages that was problematic [above], reverse engineered back into place with say, portmanager [deprecated] and portupgrade and portmanager, so that if machines in production fail some way due to pkg, the older way would suffice for awhile, and on such machines in production, each upgrade would entail both methods, and in case the preferred one fails, somewhat like HAST or ZFS or Carp, the backup methodology to keep the services up after downtime could strengthen the case for FreeBSD vs other OS which only use a singular method, I know if I were much younger I'd set about learning C again and proceeding apace... all else being more favorable than is usually the case, of course, unless I thought of some easier way than /var/db/pkg once having learned sqlite3, of which I remain unlearned.